SMSD 4.2 - проблема записи команд
 

SMSD 4.2 - проблема записи команд

Автор Skif, 20 января 2012, 02:43:42

« назад - далее »

Skif

Описание ситуации. Программа на С++ засылает последовательность команд в виртуальный COM порт. Все работало корректно с блоком SMSD 1.5. Потребовалось увеличить момент. Купили, поставили SMSD 4.2 - не работает. В привод записываются только первых 5-7 команд, далее привод зависает в режиме загрузки из ПК.
При этом та же программа параллельно работает с приводом SMSD 1.5. (система двухкоординатная) без проблем. COM порты разведены 18 и 19. Установки портов одинаковы, кроме номера. В приводах указаны серийные номера 1 и 2 соответственно. От последней команды в цепочке не приходит E10* из привода. Команды могут быть разными, но обрывается все равно на 5-7 команде.

Кто-нибудь сталкивался с такой проблемой? Спасибо заранее за ответ.

Administrator

Для проверки рекомендую проверить блок SMSD-4.2 через Hyper Terminal. Отправьте ту же последовательность команд.

Skif

Проблема решилась.
Для SMSD 1.5 чтение из порта: initb3 = serialPort1->ReadLine();
Для SMSD 4.2 так не проходит. Пришлось применить initb3 = serialPort1->ReadTo ("E10*");

В любом случае спасибо за помощь.

Administrator

#3
Таким утверждением Вы вводите в заблуждение возможных посетителей форума. Во первых, самописные функции не дают представления о том, что именно поменялось в коде.
Во-вторых, нет зависимости от модели блока управления. Может быть зависимость от конкретного изделия или партии в том случае, если не соблюдать протокол обмена блоков управления.

Для остальных заинтересованных могу сообщить следующее: проблемы возникают при написании собственной программы. При использовании стандартной программы SMC_Program или сторонней Com Port Tookit проблем не возникает.