Да, понимаю, подрядные работы и оплата неизбежна.
Понимаю, что общение со мной, требует терпения со стороны Мастера(сенсея), требует времени и молока (за вредность, как в СССР)
Да, с Codesys 3.5, с СПК.
Время для меня не имеет значения, имеет значение - жизнь!
Ввёл такую структуру, согласно инструкции, мотор ожил, но пока хаотично(прямо в каналах Codesys ввожу Биты)
01 06 62 00 00 01 57 B2 Set PR0 mode to absolute position mode (изменил)
01 06 62 01 00 03 87 B3 Set PR0 position high
01 06 62 02 0D 40 32 D2 Set PR0 position low
01 06 62 03 02 58 66 E8 Set PR0 speed value
01 06 62 04 00 32 56 66 Set PR0 acceleration
01 06 62 05 00 32 07 A6 Set PR0 deceleration velocity
01 06 60 02 00 10 37 C6 Trigger PR0 motion Send when you need to stop:
01 06 60 02 00 40 37 FA Emergency stop
Хотя первая строка другая: 01 06 62 00 00 00 01 57 B2 -здесь контрольный CRC не тот, а вот так правильнее 01 06 62 00 00 01 57 B2 (без октета лишних нулей).
Вопрос: почему в инструкции заведомо неправильно (именно в первой строке много раз в примерах)? Или я что-то упустил? С Modbus`ом знаком как медведь с музыкой.
Последний раз редактировалось Test_driver; 28.12.2023 в 09:51.
Да, там много опечаток. И этот косяк мне тоже в глаза бросился.
Тут тоже запятую забыли... в3.png
Да я смотрю вы справляетесь.
Но если подключитесь как к модбас устройству, то достаточно только адресами и тем, что в них пишется, оперировать, остальное (CRC, формирование строки запроса и пр. codesys сам делать должен).
С модбасом все до невозможности просто:
01 06 62 00 00 01 57 B2
01 - адрес железяки
06 - команда записи (на чтение регистров 03)
62 00 - адрес первого регистра, куда писать или с какого читать
00 01 - для команды записи 06 это то число, которое надо записать в регистр 62 00 (0062 если правильно, сначала младший потом старший)
00 01 - для команды чтения 03 это то число читаемых регистров начиная с 62 00
57 B2 - контрольная сумма для модбас протокола
И для вас главное это: 01 06 62 00 00 01 57 B2
Последний раз редактировалось МихаилГл; 28.12.2023 в 09:59.