Перейти к содержанию
    

Looking for STM32discovery to communicate on MODBUS

I'm looking for a STM32F407 to communicate via Modbus.

 

The hardware setup would be STM32 --> TTL --> USB --> a PC which is running Modbus master simulation software. 

On the PC I should see Modbus registers in the simulation software. On the PC I would type a number 0 to F in a terminal prompt, then I press enter which the STM32 receives via STM32 debug emulated serial port. Then the STM32 will pass that number via Modbus to the the TTL adapter and the PC using Modbus software will decode and display the number. I can type a number and press enter repeatedly, and it will repeatedly show up on the Modbus simulation software. The PC would launch the Modbus software with a command similar to this 

modpoll -b 9600 -p none -m rtu -a 3 -r 500 -c 10 COM1

MODBUS PC software found here https://www.modbusdriver.com/modpoll.html

Reference TTL USB adapter on EBAY found here https://tinyurl.com/yygs43tn

STM32 discovery found here https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-discovery-kits/stm32f4discovery.html#sample-buy

 

I would prefer if this uses ChibiOS. However that is not strictly required. 

A reference ChibiOS project is found here. https://github.com/alex31/bras_robot_e407_lcd4ds

Compiled with ChibiStudio preferred, but not strictly required. ChibiStudio found here https://chibios.org/dokuwiki/doku.php?id=chibios:products:chibistudio:start

I need to have the source code which I can compile. 

 

You would provide a ChibiOS project (or similar free program), which compiles and loads into STM32 discovery. I would provide my own discovery board and my own TTL adapter. You would provide your own discovery and TTL adapter. You would provide pictures showing how to wire the pieces and you would the source code. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По ссылке https://tinyurl.com/yygs43tn - не ходите!
Там троян.

Изменено пользователем leocat

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я может не вкурил, но... каким образом USB-UART переходник может использоваться для MODBUS?
USB-UART ну никак не гарантирует различные вариации межсимвольного времени, необходимые для фрейминга в MODBUS.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

The goal is STM32 Modbus communications. The Modbus would be done over TTL, and not USB. The USB is just for PC simulations that allow MODBUS communications. 

RTU has odd start stops. I believe ASCII can be done via UART boundaries. I do not have ASCII or RTU preference, it can be either form of Mosbus communications. 

3 hours ago, Arlleex said:

I may not have tasted it, but ... how can a USB-UART adapter be used for MODBUS?
USB-UART does not guarantee in any way different variations of IST needed for framing in MODBUS.

It can be either RTU or ASCII. I understand RTU has 1.5 start bits, which can be a problem. I believe ASCII would be acceptable to UART. I am OK with UART. 

3 hours ago, Arlleex said:

I may not have tasted it, but ... how can a USB-UART adapter be used for MODBUS?
USB-UART does not guarantee in any way different variations of IST needed for framing in MODBUS.

If the USB-UART is problematic, I would be OK with 2 discoveries boards, talking to each other. This would allow for full control of the start and stop bits for the Modbus messages. 

Sorry learning the forum, it does not allow me to edit, so I cannot clean up the above post. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 11/4/2020 at 7:47 PM, Arlleex said:

Я может не вкурил, но... каким образом USB-UART переходник может использоваться для MODBUS?
USB-UART ну никак не гарантирует различные вариации межсимвольного времени, необходимые для фрейминга в MODBUS.

а и не получается. тайм ауты совершенно другие. но это повсеместная практика - приборы подключаются то через мосты к компу. поэтому от тех тайм аутов, которые должны были бы быть, уходим на теб которые обеспечивают распознавание посылок. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 hours ago, firstvald said:

а и не получается. тайм ауты совершенно другие. но это повсеместная практика - приборы подключаются то через мосты к компу. поэтому от тех тайм аутов, которые должны были бы быть, уходим на теб которые обеспечивают распознавание посылок. 

USB опрашивается с частотой 1 КГц. Счетчик в эндпоинт религия не позволяет добавить?
Для случая с UART, в 407 если что, есть прерывания по паузе на прием данных. Длина паузы в битах частоты UART выставляется в регистрах.

Изменено пользователем leocat

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 часов назад, leocat сказал:

USB опрашивается с частотой 1 КГц. Счетчик в эндпоинт религия не позволяет добавить?

То, что он опрашивается с частотой 1кГц, не говорит еще, ровным счетом, ничего. Дальше счетчик... Счетчик чего? Куда добавить?
Вы серьезно к MODBUS-у через какой-то конвертер USB-UART подключались? Тогда там было что-то, но не MODBUS: wink:

6 часов назад, leocat сказал:

Для случая с UART, в 407 если что, есть прерывания по паузе на прием данных. Длина паузы в битах частоты UART выставляется в регистрах.

Ну в 407, если что, нет прерывания по паузе на прием данных. Путаете с другими семействами МК.
И все равно по-хорошему нужно обнаруживать 1.5t и 3.5t интервалы, а не только 3.5t.

P.S. Это все к RTU относится, естественно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

42 minutes ago, Arlleex said:

you need to detect 1.5t and 3.5t intervals, and not just 3.5t.

I understand that ASCII would allow for normal start and stop bits. RTU has 1.5 start bits. Could UART work with ASCII version of MODBUS? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, Jared сказал:

I understand that ASCII would allow for normal start and stop bits. RTU has 1.5 start bits. Could UART work with ASCII version of MODBUS? 

Конечно может, почему нет:wink:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

да серьезно, с модбасом работают через мосты usb-rs/  и через мосты lan rs/  ,

 

https://icp-das.ru/catalog/i-7561u

 

https://www.elemer.ru/catalog/funktsionalnaya-apparatura/moduli-uso-elemer-el-4000/elemer-el-4020rs/

 

https://ipc2u.ru/catalog/uport1130i

 

https://www.advantech.com/products/gf-5u7m/adam-4561/mod_92dc04b1-c0fe-4f2b-baf6-5c27e79900c6

 

и да. и в устройстве и в компе ставим совсем другие тайм ауты

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...