Skip to content

Проект для отправки и получения данных по modbus. Возможность создавать команды для отправки пакетов и сохранения ответов в логи

Notifications You must be signed in to change notification settings

kreipikc/modbus-request-response

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

modbus

Совместная работа с https://github.com/Revenan7

Ruuun

  1. откройте CMD и скопируйте проект
git clone https://github.com/kreipikc/modbus-request-response.git
  1. перейдите в директорию проекта:
cd modbus
  1. выполните:
docker-compose up --build -d

у вас должен быть запущен докер*

Использование

  1. зайдите в CMD и зайдите в консоль контейнера (убедитесь что все контейнеры запущены):
docker exec -it modbus-modbus-client-1 /bin/bash
  1. запустите файл
./start

про команды

image

1) создание новой команды

image

первая цифра - код фунцкии

1 - Read Coil Status

2 - Read Input Status

3 - Read Holding Registers

4 - Read Input Registers

вторая цифра - с какого регистра считывать

третья цифра - сколько регистров считывать

пример:

4 9 1

программа создаст функцию, которая считывает Input Register по адресу 9

2) запуск команды по ID

а) введите IP адрес устройства, доступный в локальной сети

б) введите порт этого устройства

в) введите номер команды (доступные команды, которые вы создали можно посмотреть)

если всё прошло успешно:

image

(данная функция, прочла Input Register по адрессу 9, в устройстве доступный по IP 172.18.0.3 и порту 5020)

3) вывод всех доступных команд (которые вы создали ранее)

пример:

image

4) вывод логов, всех отрпавленых пакетов и принятых соответсвенно

пример:

image

Выгрузка данных

  1. откройте консоль Git Bash и зайдите в директорию проекта
cd modbus
  1. зайдите в терминал запущенного контейнера modbus-dbpostgres-1
docker exec -it modbus-dbpostgres-1 bash
  1. выполните:
psql -U postgres -d postgres -c "Copy (Select * From responses) To STDOUT With CSV HEADER DELIMITER ',';" > db.csv
  1. нажмите Ctrl + D или впишите exit, чтобы выйти из консоли контейнера

  2. впишите

docker cp modbus-dbpostgres-1:/db.csv ./db.csv

в папке проекта создастся файл

image

About

Проект для отправки и получения данных по modbus. Возможность создавать команды для отправки пакетов и сохранения ответов в логи

Topics

Resources

Stars

Watchers

Forks

Languages