Совместная работа с https://github.com/Revenan7
- откройте CMD и скопируйте проект
git clone https://github.com/kreipikc/modbus-request-response.git
- перейдите в директорию проекта:
cd modbus
- выполните:
docker-compose up --build -d
у вас должен быть запущен докер*
- зайдите в CMD и зайдите в консоль контейнера (убедитесь что все контейнеры запущены):
docker exec -it modbus-modbus-client-1 /bin/bash
- запустите файл
./start
первая цифра - код фунцкии
1 - Read Coil Status
2 - Read Input Status
3 - Read Holding Registers
4 - Read Input Registers
вторая цифра - с какого регистра считывать
третья цифра - сколько регистров считывать
пример:
4 9 1
программа создаст функцию, которая считывает Input Register по адресу 9
а) введите IP адрес устройства, доступный в локальной сети
б) введите порт этого устройства
в) введите номер команды (доступные команды, которые вы создали можно посмотреть)
если всё прошло успешно:
(данная функция, прочла Input Register по адрессу 9, в устройстве доступный по IP 172.18.0.3 и порту 5020)
пример:
пример:
- откройте консоль Git Bash и зайдите в директорию проекта
cd modbus
- зайдите в терминал запущенного контейнера modbus-dbpostgres-1
docker exec -it modbus-dbpostgres-1 bash
- выполните:
psql -U postgres -d postgres -c "Copy (Select * From responses) To STDOUT With CSV HEADER DELIMITER ',';" > db.csv
-
нажмите Ctrl + D или впишите exit, чтобы выйти из консоли контейнера
-
впишите
docker cp modbus-dbpostgres-1:/db.csv ./db.csv
в папке проекта создастся файл