Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Borland C++ и контроллер, через VCL с контроллером 
V
    Опции темы
mrbrooks
Дата 19.9.2007, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Комрады. Может кто в курсе - что можно поюзать из VCL - для считывания данных из контроллера? Здается мне что имеется ряд компонентов таких как TTcpClient - но на мой взгляд как то коряво он рабоет. Хотя допускаю что и руки тоже крюки =) Тем не менее ни кто не сталкивался с данным вопросом?
PM MAIL   Вверх
Lazin
Дата 19.9.2007, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 18
Всего: 154



Всё зависит от того что за контроллер, если что-то готовое (PLC или что-то в этом роде) то наверняка есть, если же имеется в виду обычный микроконтроллер, то нет, и в принципе быть не может.
PM MAIL Skype GTalk   Вверх
mrbrooks
Дата 19.9.2007, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Еще как готовый. Настоящий монстр ADM - 7000 за нехилую кучку нерусских денег. Штуковина круче моего первого в жизни увиденного компа по составу. Контроллер выдает кучу аналоговых и дискретных сигналов - и мне бы было не плохо их визуализировать. А я как халявщик подумал о старичке Борланде с его VCL.  Не хотелось бы напрягаться с товарищами из Майкрософта - да чую печенью прийдется.
PM MAIL   Вверх
Lazin
Дата 19.9.2007, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 18
Всего: 154



Если эта штука использует TCP протокол, то можно юзать ВЦЛ, просто останется расшифровать что он(контроллер) там напередовал. Скорее всего над TCP используется какой нибудь промышленный протокол, вроде PROFIBUS или MODBUS, вот для него нужно будет найти библиотеку.
PM MAIL Skype GTalk   Вверх
mrbrooks
Дата 19.9.2007, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Понятно. Теперь ясно в каком направление хоть гребсти. Впринципе производители должны были постараться и снабдить свой девайс всеми необходимыми потрохами - чай 21 век. Хотя это и не факт. Хотя кто то вроде писал на VC++ 8 примерчик для данной штуки. Там уж точняк тогда юзали нечто подобное.



Это сообщение отредактировал(а) mrbrooks - 21.9.2007, 09:37
PM MAIL   Вверх
mrbrooks
Дата 21.9.2007, 09:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



А можно использовать TIdTcpClient для общения с контроллером?

PM MAIL   Вверх
casey
Дата 21.9.2007, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 20.12.2006
Где: Украина

Репутация: нет
Всего: 2



Можно немного уточнить, adm-7000 это adam-7000 (advantech)? Если да, то:

Модули серии 7000 выпускаются с двумя базовыми блоками ADAM-7500 и ADAM-7510. Количество встроенных каналов ввода-вывода -28. ADAM-7510 дополнительно содержит высокоскоростной импульсный выход (512Khz) для управления 2-х координатными сервоприводами. Оба базовых блока имеют по 3 RS232/484 порта и имеют встроенную поддержку ModbusRTU master/slave. Модули расширения позволяют организовать 512 каналов дискретных и 128 аналоговых каналов. Для программирования контроллеров служит инструмент "EZLadder" обеспечивающий поддержку IEC-1311.

То есть он не содержит поддержки TCP/IP, с ним общаться можно по RS232/485, протокол - ModbusRTU, спецификация есть в интернете, если тебе нужно просто прочитать несколько значений - это не очень сложно реализовать через API.  Конечно если adm-7000 это одно и то же с adam-7000.
PM MAIL WWW   Вверх
Lazin
Дата 21.9.2007, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 18
Всего: 154



По модбасу полно информации в сети, есть даже библиотеки smile
PM MAIL Skype GTalk   Вверх
mrbrooks
Дата 21.9.2007, 11:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



>>to casey  Нет я не ошибся - полное название контроллера ProSoft 7000 - ADM AppSrvCE работающая по TCP/IP позволяет обробатывать 500 тегов. У нее есть как свой порт так и соответственно адрес. Кстати среда разработки софта под контроллер называется EZ Desing Studio. 

>>to Lazin   Я даже не представляю как им пользоваться. В данный момент пытаюсь через WinAPI опросить контроллер по WSA.

Это сообщение отредактировал(а) mrbrooks - 21.9.2007, 11:32
PM MAIL   Вверх
casey
Дата 21.9.2007, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 20.12.2006
Где: Украина

Репутация: нет
Всего: 2



Ну если он поддерживает TCP, почему бы тебе не исползовать TClientSocket. Только без протокола обмена ты сможешь пожалуй только сконнектится с сервером и отключится от него. Есть у тебя информация какой протокол над TCP/IP. Подозреваю, что Modbus/TCP, но уточни.
PM MAIL WWW   Вверх
mrbrooks
Дата 21.9.2007, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Да насчет TClientSoket я уже хлебнул радости коннекта и отключение от него.  smile 
А протоколов куча поддерживает данная штукенция - Modbus, DeviceNet, EipGeneric, CPC Flex/Local/1769 и даже Serial а так же некий History

Это сообщение отредактировал(а) mrbrooks - 21.9.2007, 11:52
PM MAIL   Вверх
casey
Дата 21.9.2007, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 20.12.2006
Где: Украина

Репутация: нет
Всего: 2



ну про протоколы DeviceNet, EipGeneric, CPC Flex/Local/1769 я ничего сказать не могу, конфигурируй его на модбас, я вот только даж нашел описание веселой библиотеки для модбас тсп, правда на немецком (http://www.3s-software.ru/se_data/_filebank/ReleasedDocuments/ModBus%20Lib%20Beschreibung%20TCP.pdf), но все вроде ясно и без пояснений, она может тебе значительно жизнь облегчить, а можешь еще поискать, их должно быть в нете
PM MAIL WWW   Вверх
mrbrooks
Дата 21.9.2007, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Видимо прийдется. А насчет WSA ничего не слышал - там вроде описана работа сокетов - просто чувак до меня юзал все это дело через них но в его коде хрен разберешься.
PM MAIL   Вверх
casey
Дата 21.9.2007, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 74
Регистрация: 20.12.2006
Где: Украина

Репутация: нет
Всего: 2



WSA - Windows sockets api; Если уж писать в Борланде, то я бы использовал TClientSocket, замороче меньше. Можно конечно использовать и WSA, но это долго и ты должен будешь предусмотреть всякие ненормальные ситуации, дело в том что библиотеки разработаны профессионалами именно в этой области, и содержат корректную реакцию на такие ситуации, про которые мы скорее всего и не подозреваем.

Добавлено через 11 минут и 30 секунд
Цитата(mrbrooks @ 19.9.2007,  11:26)
я как халявщик подумал о старичке Борланде с его VCL. 

Вообще как полный халявщик для визуализации ты можешь использовать ModbusTCP-OPCсервер (должно быть в нете навалом) и KVisionOPC  (бесплатное ПО) и не писать ни строчки кода.
PM MAIL WWW   Вверх
mrbrooks
Дата 21.9.2007, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Да пробывал я этом TClientSocket - все чего добился дык это только приконектиться и собственно отконнектиться. Все перерыл - как его использовать - да чего то дельного не нашел. Но постораюсь еще поковырять. Просто в моих планах было всю инфу запихать в Access и ковырять пальцем в носу. Видимо не судьба. А что косается  средств визуализации - то это мысль не плохая. Если сам ничего не рожу так хоть их поюзаю. Кстати у тебя нет ссылок на инфу по TClientSocket - а то англоязычная справка вещь хорошая но несколько не продуктивная?
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0581 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.