Notice: Memcache::get(): Server localhost (tcp 11211) failed with: Connection refused (111) in /home/a146/www/we.easyelectronics.ru/engine/lib/external/DklabCache/Zend/Cache/Backend/Memcached.php on line 134
Modbus модуль дискретных входов выходов / Блог им. GYUR22 / Сообщество EasyElectronics.ru

Modbus модуль дискретных входов выходов


Модуль для дискретных входов выходов в корпус Gainta D6MG-практически законченный проект схема, плата, исходники, прошивка, все работает. Публикуется как некоторое обновление проекта 2011года. Баги и иже конечно есть :) кудаж без них. Легко расширяется до нужного количества входов выходов. И еще пара слов — здесь используется неизолированный RS-485, я сжег кучку микроконтроллеров пока понял, что супрессоры надо всетаки впаять на место, иначе судя по всему ADM3485 успешно выжигает микроконтроллер при некотором превышении потенциалов. На похожем аналоговом модуле АЦП приплясывал при установленном ADM3485 — пока поставил ADM485 не скачет буду разбираться дальше, но видимо пока поставлю резисторы т.к. похоже что происходит какая то инжекция тока — видимо на RX входе. Все это происходило при использовании более двух модулей — без использования супрессоров, если же хотя бы на одном стояли супрессоры то все работало нормально — не выгорало. Один модуль и изолированный RS-485 ICP-7561 работали в любом случае без проблем. Единственное, что надо сделать это уменьшить ширину платы на 1мм иначе не лезет в корпус.

Здесь как раз супрессоры D8,D9 и не стоят :)

Визуальная карта регистров:

Корпус: www.gainta.com/d6mg.html
Вместо СВП USM можно поставить резисторы 20-60Ом. C6 забыл поменять на 300пФ.
И еще кое что, обновление прошивки можно делать по USB через Dfuse- очень прикольно не надо ничего городить.

зы у меня остались 5 плат которые мне без надобности — кому надо обращайтесь
  • +4
  • 02 февраля 2017, 17:43
  • GYUR22
  • 1
Файлы в топике: IO_MODUL.zip

Комментарии (16)

RSS свернуть / развернуть
Код в чем писали?
0
  • avatar
  • Jman
  • 03 февраля 2017, 14:09
Coocox
0
Блин. я вот так сразу и не могу сказать где Modbus используется. видимо мне такое пока не надо :)
0
Modbus это программный протокол передачи данных по последовательным каналам — например по электрической витой паре RS485.
Используется в промышленности и умных домах для управления распределённой периферией через распределённые станции ввода/вывода (коей и является данная плата).

В архивах (выкладываемых здесь и везде) часто не хватает текстового описания (краткого — в том числе тип процессора, назначение ДИП-переключателей,...), схем в общедоступном формате просмотра PDF, фоток устройства.
Прошивку *.hex можно заливать в процессор?

предыдущий вариант 2011? we.easyelectronics.ru/STM32/stm32-pervaya-osmyslennaya-konstrukciya-i-o-modul-na-modbus-modbus-chast-2.html

Для предотвращения выгорания портов RS-485 всегда прокладываю кабель выравнивания потенциалов… помимо защиты устройства защищает и самого человека.
0
hex да можно заливать, по поводу портов — дело не только в среднем проводе. ADM3485 чето просирает и жжет порты и процессор, сам при этом не горит- вот это удивительно…
0
Интересный блочок. Modbus самолично реализовывали или библиотечный?
0
  • avatar
  • Dmi
  • 13 февраля 2017, 22:56
самолично, только CRC стыбзил
0
<самолично, только CRC стыбзил /blockquote>у L/F0**, F3**, F4** помимо поддержки пауз в некоторых USART
In this mode, the end of one block is recognized by a “silence” (idle line) for more than 2 character times
есть аппаратный помощник для подсчёта 8-bit в CRC16
The CRC (cyclic redundancy check) calculation unit is used to get a CRC code from 8-, 16- or 32-bit data word and a generator polynomial.
можно попробовать переписать процедуру через аппаратные регистры
0
Да только смысл в этом каой — не совсем понятно…
зы одинаковый код и на pc и контроллере
0
А что за хрень такая EDE?
0
а, нашел.
0
зы у меня остались 5 плат которые мне без надобности — кому надо обращайтесь
Добрый день!
Платки еще остались? Я бы приобрел…
bogovic<зверюга>bk.ru
0
  • avatar
  • THK
  • 25 марта 2017, 19:03
я бы так отдал
зы или махнул бы на что нито полезное
0
А я бы так забирать постеснялся или не постеснялся.:)
зы я и предлагаю махнуть на ден. знаки — их потом можно на что то нужное поменять. Конечно если Вы не ищите что то этакое, что у меня есть и Вам пригодиться.
Все таки предлагаю обсудить вопрос по почте, иначе все коменты загадим.
0
Спасибо за хороший труд!!!
Повторил на stm32f100 discovery, и без изменения кода на stm32f103. Очень легко импортируется благодаря тому, что вы используете SysTick и отказались от «железных» таймеров. Хороший пример, еще раз спасибо.
Вопрос: На печатной плате вижу кварц на 8 МГц, но в коде нет инициализации HSI. Вы считаете стабильности внутреннего генератора достаточно, или все таки рекомендовали работать от внешнего кварца?
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.