разобраться c передачей данных по com/485 связи
разобраться c передачей данных по com/485 связи
Ситуация такая у меня есть 2 считывателя Rfid RC522 привязанных к 2м  arduino nano работают они в сети rs485 через переходник 
смысл в том что бы у arduino был что то вроде личного номера дабы опрашивая arduino по номеру получать ответы о состоянии считывателя!
я думал что получится сделать через стандартный блок передачи переменной по com порту!
но как я понял ситуация такая что Arduino в сети 485 подключается как master и сама инициализирует передачу номера карты
то-есть если подключится напрямую обычным терминалом можно увидеть как считыватель сам имитирует передачу номера карты ( это к сожалению не совсем подходит)
вопрос такой, как сделать адресуемый считыватель в сети rs485 преимущественно использовать один порт что бы по очереди опрашивать состояние считывателя и от соответвуешего считывателя получать ответ о его состоянии ?
			
			
									
						смысл в том что бы у arduino был что то вроде личного номера дабы опрашивая arduino по номеру получать ответы о состоянии считывателя!
я думал что получится сделать через стандартный блок передачи переменной по com порту!
но как я понял ситуация такая что Arduino в сети 485 подключается как master и сама инициализирует передачу номера карты
то-есть если подключится напрямую обычным терминалом можно увидеть как считыватель сам имитирует передачу номера карты ( это к сожалению не совсем подходит)
вопрос такой, как сделать адресуемый считыватель в сети rs485 преимущественно использовать один порт что бы по очереди опрашивать состояние считывателя и от соответвуешего считывателя получать ответ о его состоянии ?
- Sancho
 - Полковник
 - Сообщения: 4066
 - Зарегистрирован: 25 дек 2015, 17:32
 - Откуда: Ярославль.
 - Имя: Александр
 - Поблагодарили: 5 раз
 - Контактная информация:
 
разобраться c передачей данных по com/485 связи
[ref]serghei[/ref], ModBus Ваше всё.
			
			
									
						мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
			
						разобраться c передачей данных по com/485 связи
Спасибо я подозревал! но сомневался!
тогда такой вопрос!
данные со считывателя ну код карты должен передаваться в регистрах хранения ?
и запрос о состоянии считывателя тоже должен передаваться в регистрах хранения?
- Sancho
 - Полковник
 - Сообщения: 4066
 - Зарегистрирован: 25 дек 2015, 17:32
 - Откуда: Ярославль.
 - Имя: Александр
 - Поблагодарили: 5 раз
 - Контактная информация:
 
разобраться c передачей данных по com/485 связи
[ref]serghei[/ref], По фэншую - переменные, которые не возможно изменить, входы, - через инпут рег. Учитывая, что они принимают только 2 байта, предварительно разобрать код карты, семибайтный наверное,  для двух рег., потом собрать.
Но Вам никто не запрещает использовать holding.
			
			
									
						Но Вам никто не запрещает использовать holding.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
			
						- Alias
 - Лейтенант
 - Сообщения: 481
 - Зарегистрирован: 27 ноя 2017, 13:15
 - Откуда: Rus44
 - Имя: Michael
 - Контактная информация:
 
разобраться c передачей данных по com/485 связи
А где вообще почитать подробности феншуя по МодБасу в флпрог? Куда бы ни сунулся - делается по шаблону, а без понимания повторять не хочется...
			
			
									
						- Sancho
 - Полковник
 - Сообщения: 4066
 - Зарегистрирован: 25 дек 2015, 17:32
 - Откуда: Ярославль.
 - Имя: Александр
 - Поблагодарили: 5 раз
 - Контактная информация:
 
разобраться c передачей данных по com/485 связи
Этого как-бы нет - здесь просто он реализован.Alias писал(а): 28 янв 2019, 15:25А где вообще почитать подробности феншуя по МодБасу в флпрог? Куда бы ни сунулся - делается по шаблону, а без понимания повторять не хочется...
Это касается всех сторонних протоколов/приложений и т.д. - модбас, некстион, виртуино, ремоте.
Просто любые данные, которые доступны в режиме "только для чтения", "R", принято располагать в области соответствующих регистров - discret/analog input. Это, как правило, датчики дискретные и аналоговые, версии прошивок, набегающий итог/сумма и т.д.
Остальное, "Доступно чтение и запись", "R/W" - в соответствующих Coil & Holding reg.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
			
						разобраться c передачей данных по com/485 связи
вроде бы разобрался! по запросу отдает мне значения!Sancho писал(а): 28 янв 2019, 15:42Этого как-бы нет - здесь просто он реализован.Alias писал(а): 28 янв 2019, 15:25А где вообще почитать подробности феншуя по МодБасу в флпрог? Куда бы ни сунулся - делается по шаблону, а без понимания повторять не хочется...
Это касается всех сторонних протоколов/приложений и т.д. - модбас, некстион, виртуино, ремоте.
Просто любые данные, которые доступны в режиме "только для чтения", "R", принято располагать в области соответствующих регистров - discret/analog input. Это, как правило, датчики дискретные и аналоговые, версии прошивок, набегающий итог/сумма и т.д.
Остальное, "Доступно чтение и запись", "R/W" - в соответствующих Coil & Holding reg.
но еще такой вопрос
я просматриваю в программе Qmodbus
вроде все работает ок! НО почему в строке Data пишет мне значения 42687 в 0xa6bf hex но номер карты 2797575099 ?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
			
						- Sancho
 - Полковник
 - Сообщения: 4066
 - Зарегистрирован: 25 дек 2015, 17:32
 - Откуда: Ярославль.
 - Имя: Александр
 - Поблагодарили: 5 раз
 - Контактная информация:
 
разобраться c передачей данных по com/485 связи
[ref]serghei[/ref], Я уже писал. Тип данных....
			
			
									
						мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
			
						разобраться c передачей данных по com/485 связи
Я как бы понял !
верно ли будет мое решение если я 2797575099 разобью на 2 части 1-27975 2-75099 запишу их в регистры 0-1 и 2-3 получатся 2 переменные
это будет правильным решением?
или как то иначе?
и еще почему в регистр 0 данные не записываются а только в регистр 1 . рег 0=0 ,1=27975, так же и ,2=0 , 3=75099 ?
- Sancho
 - Полковник
 - Сообщения: 4066
 - Зарегистрирован: 25 дек 2015, 17:32
 - Откуда: Ярославль.
 - Имя: Александр
 - Поблагодарили: 5 раз
 - Контактная информация:
 
разобраться c передачей данных по com/485 связи
[ref]serghei[/ref], А как протестить - Ваш проект не вижу....serghei писал(а): 28 янв 2019, 21:46и еще почему в регистр 0 данные не записываются а только в регистр 1 . рег 0=0 ,1=27975, так же и ,2=0 , 3=75099 ?
На моих, да и у других тоже, всё вроде записывается
Отправлено спустя 33 секунды:
Для тестов пользуюсь инсатовским OPC
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
			
						Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость