Все остальные как-то сферичны и в вакууме

Только ради снижения стоимости контроллера скорее всего нет необходимости такой глобальный проект затевать,
хотя заманчивая задача конечно же

![]() |
roboforum.ruТехнический форум по робототехнике. |
|
Vooon писал(а):И да, я хочу приблизить среду орфы к среде наших ПЛК.
Vooon писал(а):Так нашу орфу с Авра особо не перетянешь.
Vooon писал(а):И писать драйвера HAL для всего на новой платформе не очень хочется. Есть ОСРВ в которой многое из HAL'а реализовано. В том числе USB CDC (что многого стоит).
Vooon писал(а):Да, первоначальная идея результат NIH2
Vooon писал(а):Идея ORFA2.
1. Глобальные переменные
ГП служат для связи всех процессов в системе. Через них идет общение.
ГП представляет собой базу данных типа ключ - значение(я).
Процесс может проверить была ли произведена запись, ожидать ее.
2. Демоны
На каждую проблему выделяется свой процесс — демон.
Демон создает свой набор ГП через который идет обмен с системой и использует HAL для работы с железом.
Пример:
Демон АЦП:
- создает ГП adc/c и adc/i
- проверяет с, меняет настройки каналов
- обновляет i
Демон серв:
- создает ГП servo/raw/o, servo/c, servo/o ... /t
- проверяет c, ...
- проверяет raw/o, если менялось - ставит положение
- просчитывает шаги для o (за t)
- обновляет raw/o, изменяет выхода
3. Сервера синхронизации
Это процессы основная задача которых — обмен ГП.
Сервер сообщает ПК о всех ГП и их состояниях, позволяет читать и писать в них с ПК.
Т.е. дает доступ извне к базе ГП.
Для примера можно написать клиент в экселе.
Таблица, в которой отображено состояние, в которой можно его и изменять.
Duhas писал(а):Dead, а можно узнать что вы так за идваси уцепились ? )
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0