Приветствую, пришла тут идея как организовать удаленное управление контроллером с одного компа на другом, а также передачу видео изображения, централизованную обработку изображений и данных, поступающих от различных клиентов.
Т.е. при структуре когда контроллер подключен по usb, допустим к нетбуку(или кпк), и обменивается с ним через последовательный порт и есть желание управлять контроллером удаленно по Wi-Fi, получать видео изображения у меня нарисовалась вот такая структура ПО:
В схеме изображен случай для управления двумя контроллерами(на двух разных PC устройствах) через один сервер, где:
1) RServer - это сервер, через который идут соединения и летят данные.
2) RClient1 - клиентская программа(на нетбук, кпк), работающая с котроллером. RClientN - другой клиент..
3) RControl1, RControlN - ПО для ручного управления контроллерами и ПО клиентов.
Частный случай - это управление одним контроллером. И клиент и сервер, в принципе могут быть на одном ноутбуке если так более целесообразно.
Важно что каждая программа выполнена в виде сервисов, которые могут работать по любому из каналов - http, https, NET, Pipe и.т.д. Это позволяет гибко определить структуру размещения сервера и управляющих программ RControl. Например, возможно управление через интернет или только внутри локальной сети, или только на одном компе.
Используя WindowsComunicationFoundation из .Net вполне реально реализовать подобную систему. Управляющая программа может быть написана как для ПК, так и для КПК(c ОС WindowsMobile, Windows SE) из под .Net Framework.
Нетбук и кпк в качестве управления или мозгов для робота мне интересны потому, что они есть уже у многих, там есть Wi-Fi, работает .Net Framework и не нужно покупать специализированные устройства или mini PC..