Software Solutions
ru eng
  • Portfolio

MQTT and OPC UA protocols



Project:Gas control system for gas filling columns
Short description:
It's a system for control gas' parameters (price, a volume of the gas, density, refill time ... ) in the gas stations and sends/receives data to/from a server by MQTT protocol + encryption.
The system has two parts: client and server.
The client is implemented based on this library:
https://github.com/eclipse/paho.mqtt.embedded-c
Note! We implemented platform depends part for stm32f091 (UART+sim808 and UART+esp8266).
The server (Broker) is taken from here:
https://mosquitto.org/2013/01/mosquitto-debian-repository/
Note! We used Broker + client together on the Linux server and write/read data to/from MySQL data base.
Creating a household ultrasonic gas meter with a display of the results on the graphic display 320x240.
The project was implemented on the basis of MSP430F2118 and time-to-digital converter ACAM GP21.

Project:MQTT client
Short description:
It was an implementation of the MQTT client for Linux based on the same library how the first project, but implemented platform depends on Linux sockets (TCP/IP).
It helped to create a lot of clients in the different threads in one Linux platform and to test server side of the system with a lot of requests.
Note! Our code interface has better improvement part than other versions of the protocol. It's very easy to port to any platform because it needs to implement only two modules: Timer and Transmitter/Receiver.
For examples:
(It's from real project on stm32f09)
Timer timer1;
Timer timer2;
Gprs GPRS;
Wifi wifi;
Mqtt mqtt1(gprs, timer1);
Mqtt mqtt2(wifi, timer2);
mqtt1.sendData(....);
mqtt2.sendData(....);
...
in this case need to change modules Gprs and Wifi for different platforms.

(It's from real project on Linux)
Timer timer1;
Timer timer2;
Ethernet ethernet1;
Ethernet ethernet2;
Mqtt mqtt1(ethernet1, timer1);
Mqtt mqtt2(ethernet2, timer2);
mqtt1.sendData(....);
mqtt2.sendData(....);
...
in this case need to change a module Ethernet for different platforms.

Project:Factory system start the engines
Short description:
We used the OPC UA protocoll for the industriales controllers Siemens.
For example, factory system start the engines (open the doors for the car entry) in the depending on the state of the sensors what secured to other devices on the network.
Copyright by SoftSolutions @2016