Required Software Dev tools:
QT
C++
GitHub
OS:
Cross platform
Initial version must compile and run on Linux Debian later milestone Win 32
Database:
PostgreSQL
Libraries:
libmodbus
Components of project:
1. Server program for communication, processing, log database updates and client authentication via radius. Configuration should be stored in a plain text file. CLI interface for monitoring and config / initial setup.
2. Client QT GUI for system monitoring, display and setpoints of control values and setup in menu to connect to server. Should be able to run on same box but should not have to.
Server program requirements:
1. Connect six unique Modbus TCP slaves simultaneously. framework should be scalable for future slaves.
2. Configure IP / hostname and ports for slaves via menu.
3. Read / Write all values to arrays from modbus tables.
4. Process values from / to arrays to real values then write / write SQL tables for logs or recipes.
5. Send read and write status for each modbus device and user / client connects and disconnects to log heartbeat.
6. Config should be plain text file for easy editing.
Client QT GUI
1. Connect to server program over ssh auth for user or admin.
2. Display read only values output only boxes and set points R/W 3. values in I/O boxes that can be locked out with menu selected lockout in admin mode.
4. Display heartbeat of all devices on screen.
Future improvements after initial milestones are met:
1. Modbus RTU
2. Alarms function on server Screen / Email
3. Display Alarms on client.
4. Lode and save recipes on client
What challenges do you anticipate in completing the project?
I expect following challenges :
Preparing a database schema in accordance with the slaves data. Once it is done then data processing stage will come.
Proposal:
Rich Experience in Modbus communication , handling database . Can do the job in committed time with accuracy and efficiency.
What challenges do you anticipate in completing the project?
Actually this is pretty interesting job for me. First of all because I am really interested in QT/C++. Also I am interested in using Modbus as RTU for SCADA, which I think is your final destination.
Proposal:
Hi
I can provide both, client and server application using QT/C++. It will be compiled For debian and for windows (Pretty easy with QT). The framework will be working with unlimited Modbus slaves.
You have written a complete introduction but still I have some questions:
1) Where should be that config file? What should be it's format?
2) Do you need to apply some logic between reading from Modbus and Writing into SQL?
3) Do you need TLS and SSL encryption for RADIUS?
You will find low bids here. Do you want to give this job to Unprofessional?
Looking forward to reply from you
Archil