Подключение датчиков через RS232

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

Ответить
sed_alex
Сообщения: 6
Зарегистрирован: Вс янв 08, 2017 1:59 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Подключение датчиков через RS232

Сообщение sed_alex » Пн янв 16, 2017 2:09 pm

Приветствую!

Имеется некоторое устройство на контроллере STM8S003 которое спит 30 секунд, потом просыпается на 3 секунды собирает данные с датчиков протечек, счетчиков воды, температурных датчиков и датчика влажности потом все пакует в контейнер и выстреливает им через UART (9600 8n1).

Вот типичный обмен:

Код: Выделить всё

 ============================
Count1:    120 
Count2:  10080 
Temp of hot water IN: 25 °C, 
Temp in BathRoom  17.8°C, 
Humidity in BathRoom  1.0%, 
Toilet Leaking sensor, 576  mv
Bathroom Leaking sensor,   0  mv
============================
 
Вопрос каким образом реализовать забор данных на сервере построенном на основе Raspberry Pi3b ?
Готового модуля взаимодействия путем прямого подсоединения к UART Raspberry я не нашел, да и с Linux не дружу я чтобы писать собственные скрипты.
Может есть образцы реализации подобной задачи ?
P\S если надо мне не составит особого труда переписать обмен на любой другой протокол который есть на борту контроллера (LIN, SPI, I2C)
gorobey
Сообщения: 50
Зарегистрирован: Чт окт 27, 2016 11:48 am
Благодарил (а): 13 раз
Поблагодарили: 3 раза

Re: Подключение датчиков через RS232

Сообщение gorobey » Пн янв 16, 2017 9:52 pm

Посмотри в сторону modbus. Тоже думали на какой протокол... Выбрали modbus. Потом только нужен гейт modBus RTU-TCP. Сейчас использую USB RS485 Dongle и https://sourceforge.net/projects/mbus/? ... p_redirect програмный гейт. Для привязки к MD уже есть модуль.
akouz
Сообщения: 254
Зарегистрирован: Ср июл 09, 2014 3:48 pm
Благодарил (а): 6 раз
Поблагодарили: 41 раз

Re: Подключение датчиков через RS232

Сообщение akouz » Вт янв 17, 2017 10:49 am

Нафиг там Модбас? Ведь шина не нужна, зачем огород городить?

Надо использовать обычный копеешный преобразователь USB-to-UART, их много кто делает. Гугление на слова Rpi UART дает более 200 тыс результатов.
sed_alex
Сообщения: 6
Зарегистрирован: Вс янв 08, 2017 1:59 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Re: Подключение датчиков через RS232

Сообщение sed_alex » Вт янв 17, 2017 12:50 pm

С cамой Raspberry Pi3B разобрался, данные потекли
всего то и надо было в настройках прописать :

pi@raspberrypi:~ $ sudo nano /boot/config.txt

# Enable UART
enable_uart=1 // <- Это включило работу с UART

Перегружаемся... sudo reboot now

Далее: проверяем работу с консолью должно быть как то так:
pi@raspberrypi:~ $ sudo nano /boot/cmdline.txt

dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait

Опять перегружаемся и наконец пишем:
sudo stty -F /dev/ttyS0 9600 //- где 9600 скорость обмена по порту UART
ну и финальный штрих:
sudo hexdump -C < /dev/ttyS0

Последняя строчка выводит дамп обмена с /dev/ttyS0 (UART1) куда нам надо, можно просто пихать в файл, можно в буфер обмена складировать а уже оттуда разбирать по полочкам и пихать в базу данных.
В общем теперь остается понять как это все скармливать MySql

Ну и фотка обмена:
Raspberry_UART.png
Raspberry_UART.png (284.52 КБ) 4088 просмотров
Ответить