This is topic Драйвер для сервоусилителя in forum TRACE MODE 5 бесплатная версия / TRACE MODE 5 Free version at Форум TRACE MODE: техническая поддержка.
Здраствуйте уважаемая служба техподдержки. Возникла необходимость в разработке драйвера, для оборудования неподдерживаемого ТМ. Оборудование - сервоусилитель от Mitsubishi Electric. Планируется подключать его напрямую к COM порту компьютера. С устройством можно работать по интерфейсам RS-422 и RS-232C. А вопрос у меня такой к Вам. В хелпе есть описание разработки драйверов для контроллеров и плат УСО. А для нужного мне устройства принципы и идеи разработки описанные там подойдут или может есть какие-либо тонкости, не описанные там. Спасибо за внимание.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
1) Что за протокол обмена поддерживает данное устройство? 2) Для обмена по СОМ-порту Вам нужно будет писать драйвер для обмена с контроллером по последовательному интерфейсу - это драйвер TYPE11.
Posted by oldm (Участник № / Member № 723) on :
Насколько я Вас понял можно воспользоваться шаблоном для драйвера обмена по последоаательному интерфейсу(в смысле ф-ции Prepare_xxx, Set_xxx и т.д.) и в соотвествии с протоколом обмена сервоусилителя запрограммировать эти самые функции. По поводу протокола обмена. Названия в документации на сервоусилитель протоколу нет, есть его описание.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
1) Насчет типа драйвера - Вы поняли верно. 2) Посмотрите общий вид протокола - может он похож на какой-нибудь стандартный (например - ModBus)?
Posted by oldm (Участник № / Member № 723) on :
В соотвествии с протоколом обмена чтобы установить данные операций позиционирования необходимо сделать следующее: -для скорости сформировать следующую посылку -> 0xA0 + 0x10 + [значение скорости в hex-виде]; -для расстояния следующую -> 0xA0 + 0x13 + [значение расстояния в hex-виде]. И т.д. тоесть для изменения/считывания каких-либо данных надо формировать разные посылки. Формирование посылки происходит в функции Set_xxx в переменную массив sbuf. Вот и возникает у меня вопрос такой - чтобы работать с разными управляемыми величинами сервоусилителя это в драйвере организовать как, не писать же под каждую величину свой драйвер.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
А чем Вас не устраиват настройки канала, которые передаются в драйвер посредством структуры IA? Ведь именно они должны определять какую функцию должен выполнить драйвер при вызове его тем или иным каналом из базы каналов. Посмотрите, например, каналы подтипа КОНТР_1 - у них имеются настройки, определяющие их функциональность вот по этим настройкам в драйвере и определяется что нужно посылать или считывать с устройства.