This is topic ASCII commands in forum Драйверы / Device Drivers at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/43/t/000125.html

Posted by Alex210271 (Участник № / Member № 4421) on :
 
Добрый день.
Мне нужно управлять неким устройством, путем посылки в COM-порт двухсимвольных ASCII команд. Обратно от устройства никакого ответа не приходит. То есть, задача - просто отправить в порт два произвольных символа. Подскажите, пожалуйста, как это лучше реализовать.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Можно попробовать "Обмен по произвольному протоколу по RS" (см. документацию).
 
Posted by Alex210271 (Участник № / Member № 4421) on :
 
Я попробовал. Но, у меня не получилось. Получилось сделать как у вас в учебном видео "Бесплатный драйвер Modbus ASCII" используя CALL.VECTOR и SENDCMD в поле "дополнительно" источника. Посылкой управляю включая и отключая канал CALL. Мне только не нравится что при включенном канале посылка символов ASCII в порт идет постоянно, хотелось бы послать одну команду. Ну и что канал не получая ответа показывает недостоверность. В принципе работает, но я думал может вы предложите более простое и красивое решение.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Сделайте "Источник" OUT, канал Vector - OUT и задайте у канала Vector после SENDCMD=<команда> ключ BYTESREAD=<сколько байтов читать>, равный 0.
 
Posted by Alex210271 (Участник № / Member № 4421) on :
 
Если источник сделать OUT, вообще в порт ничего не посылается (при любом типе канала Vector). Монитор портов показывает что порт открыт и на этом все. Ни одного символа. Если источник типа INPUT, то канал Vector - OUT работает так же в точности как и IN. Никакой разницы не заметил. Ключ BYTESREAD=0 действительно помог - канал остается достоверным. Думаю меня это пока устроит. Большое спасибо.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Канал OUT отрабатывает только при взведении атрибута EXEC (39).
Проверено.
 
Posted by Alex210271 (Участник № / Member № 4421) on :
 
Спасибо. Вы правы. Я так и проверял, но где-то, видать, ошибся. Не знаю, почему у меня сразу не заработало. Еще раз перепроверил, все работает идеально.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2