Если автор еще сюда заглядывает, хотелось бы попросить помощи.
У меня имеется аналогичный девайс, который висит на 485-й шине. Разница только в том, что он работает только с типом протокола Modbus ASCII. Общение с компом происходит через переходник USB-RS485. В системе он виден как виртуальный последовательный порт (Com3).
Стоит задача считать из девайса некоторые переменные и оформить в красивом виде, как программу.
Используя софт ModScan32, мне удается успешно прочитать переменные:
modscan32_1.png
modscan32_2.png
Однако, с PascalScada ничего не выходит.
Опишу по порядку.
Я поставил на Win7 x64 последний Lazarus 0.9.30.4.
Скачал PascalScada 0.7.2. При установке его в Лазарус он выдал error при компиляции. Гугление по строке выдало
решение.
После соответствующей правки Zeos.inc все собралось нормально и PascalScada интегрировался в IDE.
Создаю новый проект. Кидаю на форму TSerialPortDriver, настраиваю:
lazarus01.png
Далее кидаю на форму TWestASCIIDriver (более ничего похожего на ASCII там не нашел). Прописываю CommunicationPort:SerialPortDriver1.
Добавлено спустя 10 минут 27 секунд:Добавляю на форму TPLCTagNumber, пытаюсь настроить:
lazarus02.png
На вкладке "События" выбран ProtocolDriver:WestASCIIDriver1
На форму выведена кнопка и TLabel, при нажатии на которую происходит следующее:
- Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption := FloatToStr(PLCTagNumber1.Value);
end;
При нажатии на кнопку выводится значение 0. В логе порта (comport.txt) вообще ничего нет. Светодиоды TX RX на конвертере молчат.
Что я делаю не так?
У вас нет необходимых прав для просмотра вложений в этом сообщении.