Работа с Com портами в WinCC посылка и
прием
Хоружевский
Роман; 20.8.02
Как организовать посылку и прем из Com порта на WinCC исполльзуя
OLE объект или C++
Re: Работа с Com портами в WinCC посылка и
прием
siemargl; 21.8.02
just write wincc .chn driver ;-))
Работа с Com портами в WinCC посылка и
прием
Хоружевский
Роман; 21.8.02
Спасибо за ответ некому "siemargl", но вы мне предложили
использовать драйвер обмена по последовательному порту для SIMATIC,
а мне нужно просто послать на порт посылку и принять ее. Например
есть лабораторные весы Mettler Toledo которые могут управляться
через Com порт, им нужно задать вопрос в виде команды которую
передать на порт и получить от них ответ. Вот и вся "проблема"
Re: Работа с Com портами в WinCC посылка и
прием
Евгений Трунов;
22.8.02
Если посылка разовая, то возможно включение в С-скрипт вызовов
функций Win32 API типа ReadFile и WriteFile для чтения/записи из/в
порта. Есть объекты АctiveХ, инкапсулирующие в себе низкоуровневый
обмен данными с СОМ-портами - можно разместить их на формы в
Graphic Designer'e.
Если же необходимо связать данные о весе с каким-либо тегом WinCC,
то, действительно, нужно писать драйвер канала .chn либо
OPC-сервер.
Re: Работа с Com портами в WinCC посылка и
прием
Iva;
22.8.02
Не соглашусь с Евгением Труновым насчёт того, что если надо связать
данные о весе с тегом то требуется драйвер канала или OPC-сервер.
Используя в скрипте команды чтения-записи COM-port можно тут же
записывать полученный вес в тег. А скрипт пусть будет глобальным и
крутится с какой-то периодичностью.
Работа с Com портами в WinCC посылка и
прием
Хоружевский
Роман; 22.8.02
Ребята советы Ваши понятны, но есть ли у кого нибудь пример скрипта
с открытием, закрытием, приемом из порта. А то у меня опыта с
такими "вещами" нет и я не знаю даже с чего начинать "рисовать"
программулину.
P.S.
Спасибо всем за ответы.
Re: Работа с Com портами в WinCC посылка и
прием
Iva;
22.8.02
Может за тебя ещё проект сделать? Смотри MSDN, заодно и опыт
решения нетривиальных задач получишь. Если не справишься, то
покупай у Siemens весы Siwarex с готовым софтом.
Работа с Com портами в WinCC посылка и
прием
Хоружевский
Роман; 22.8.02
Ну проект за меня стряпать не нужно, своих хватает уже
реализованных. Просто как всегда хотчестся усё побыстрее заделать.
Но походу без букварей и многих часов стучания по клавишам не
обойтись.
Re: Работа с Com портами в WinCC посылка и
прием
Евгений Трунов;
22.8.02
Iva, чтобы _только связать_ и вызвать SetValue(), действительно,
достаточно С-скрипта. Но если нежелательно замедлять работу всей
системы периодическим разбором Р-кода функции ReadFile, то тег
должен быть внешним и связанным с каким-либо каналом .chn. Такая
архитектура :).
Re: Работа с Com портами в WinCC посылка и
прием
siemargl; 3.9.02
Ну, слава богу, со мной согласились ;-)
Re: Работа с Com портами в WinCC посылка и
прием
Костенич Дмитрий; 4.9.02
Ну а я все-таки не соглашусь с siemargl - *.chn драйвер или
OPC-сервер не единственные варианты.
НАМНОГО проще, быстрее, а в данном случае и удобнее, будет сделать
следующее:
1. Прием из COM-порта. Пишется программка, выполняющая мониторинг
событий COM-порта (с помощью стандартной системной функции
WaitCommEvent) и, при получении чего-нибудь осмысленного,
записывающая это значение в тег WinCC (с помощью функции ODK
DMSetValue). Программка указывается в списке программ для загрузке
в RunTime. И все - после загрузки работает абсолютно независимо от
WinCC.
2. Вывод в COM-порт. Создается глобальный скрипт, срабатывающий по
изменению тега. Скрипт выполняет запись значения этого тега в
COM-порт (с помощью хотя-бы WriteFile). И опять все - никаких
циклических вызовов.
Единственный тонкий момент - теги на прием и посылку данных должны
быть разные (RX и TX).
Ну а если нужно почитать как работать в Win32 API с COM-портами, то
читайте MSDN - раздел "Platform SDK\windows Base Service\Files and
I/O\Communications"
Желаю удачи!!!