Ситуация следующая.
Имеется железная кабина, симулятор МFS-9, и два системных блока, один из которых более менее современный, второй похуже. Вся проблема в том, что программа управления приборами кабины написана под Win -98 и соответственно не может работать под более старшие версии. А на новый компьютер не ставится Win-ME. Намучившись с различными драйверами и примочками, которые вроде как разрешают приложению работать под Win- XP для возможности прямого доступу к портам ввода вывода (на самом деле работают очень плохо и криво, а частично не работают совсем). Есть мысль попробовать такую конфигурацию:
Имеется железная кабина, симулятор МFS-9, и два системных блока, один из которых более менее современный, второй похуже. Вся проблема в том, что программа управления приборами кабины написана под Win -98 и соответственно не может работать под более старшие версии. А на новый компьютер не ставится Win-ME. Намучившись с различными драйверами и примочками, которые вроде как разрешают приложению работать под Win- XP для возможности прямого доступу к портам ввода вывода (на самом деле работают очень плохо и криво, а частично не работают совсем). Есть мысль попробовать такую конфигурацию:
Первый системный блок (современная машина) система Win-XP, MFS-9 (что то вроде сервера). Отсюда же берем визуалку на (проектор, монитор), звук.
Второй системный блок (старенькая машина) система Win-ME, MFS-9, программа ввода вывода данных (роутер) для железной кабины.
Системные блоки связаны по локальной сети через хаб.
Теперь вопрос:
Как все это дело синхронизировать и что для этого еще нужно?
Если подобная тема обсуждалась? Пожалуйста ссылочку. Поисковиком что-то не нашел.
ra3dcs, on 03 January 2012 — 15:40, said:
вся проблема в том, что ИМХО вы не с той стороны подошли к решению проблемы.
Самый быстрый и простой способ: привязать контроллеры к новой программе (написать новую), либо найти уже существующие программы для работы с игровыми устройствами ввода-вывода напрямую..
Одна из таких программ недавно обсуждалась ее разработчиком на страницах этого форума. Если найду ссылку — подкину.
Сообщение отредактировал RAID: 03 January 2012 — 16:21
RAID, on 03 January 2012 — 16:20, said:
Вы к примеру можете это сделать?
Лично Я нет!
И так ясно, что это самый простой и быстрый способ!!! НО!!!!
Сообщение отредактировал ra3dcs: 03 January 2012 — 17:32
Ведь для этого и существует сообщество симмеров
синхронизация двух «кабин» в фс9 — ветвь тупиковая
Сообщение отредактировал RAID: 03 January 2012 — 22:24
ra3dcs (03 January 2012 — 15:40) писал:
Конечно наиболее правильно было бы переписать эту программу под какой-то более современный нежели LPT интерфейс. Под тот же мост USB-параллельная шина FT245. Это ваше дело, переубеждать не буду.
ra3dcs (03 January 2012 — 15:40) писал:
Наиболее распространен для подобных вещей протокол iocp. Протокол ходит по udp, т.е. конечные точки могут находиться на разных компах. Готовые плагины для общения сим <-> iocp есть. Осталось в вашу программу-роутер добавить iocp-клиента. Описание iocp и плагины искать на сайте opencockpits. Зарыто оно там глубоко, но найти можно. Да протокол далеко не иделаен, но другого у нас пока нет.
САБ (05 January 2012 — 13:16) писал:
Уточнение — по TCP. В ближайшем будущем выложу dll-ки с клиентом IOCP, запускаемом как отдельный процесс с парой callback функций, ибо уж очень часто стали возникать вопросы на эту тему
vitabutch (05 January 2012 — 13:22) писал:
Точно? В описании написано про udp.
САБ (05 January 2012 — 13:31) писал:
Угу.
Описание тут: http://www.opencockp…showpage&pid=66
САБ (05 January 2012 — 13:16) писал:
Да разве ж я против, только кто это сделать может?
vitabutch (05 January 2012 — 23:56) писал:
От этого описания не легче!
Человеческим бы языком кто бы растолковал!
vitabutch (05 January 2012 — 23:56) писал:
Хм. Действительно. А где же я встречал упоминание про UDP?
ra3dcs (06 January 2012 — 00:40) писал:
Вы ведь дописываете свой роутер под новое оборудование? Возможно сможете и с этой микросхемой подружиться. Описание какое-то по общению с ней через dll производителя было где-то на сайте.
Вот есть еще такое устройсво: http://www-user.tu-c…T/index.html.en По описанию эмулирует LPT на нижних адресах, вроде бы как раз для вашего случая. И где-то мне попадалось еще одно похожее, но более свежее. Постараюсь найти.
Добавлено: нашел. «более свежее» — это то, что по этой же ссылке в разделе «версия 1.7»
А вот оно продается готовое: http://ur4qbp.ucoz.u…3/2010-12-09-44
Сообщение отредактировал САБ: 06 January 2012 — 01:46
ra3dcs (06 January 2012 — 00:42) писал:
Человеческим бы языком кто бы растолковал!
Все очень просто. Обмен происходит по протоколу TCP. Протокол текстовый, т.е. можно общаться с сервером даже через telnet. Зарезервированные последовательности обмена клиент-сервер (без допноворотов):

клиент: Arn.Inicio:15:19:5316: — Здрасте, я ваш новый IOCP клиент, не будете ли Вы так любезны отсылать мне изменения переменных со следующими номерами 15, 19, 5316?
Сервер: Arn.Vivo — Привет
Сервер: Arn.Resp:15=67:5316=23: — Переменная номер 15 равна 67, а номер 5316 равна 23м, а 19тую я вам не шлю, ибо она нуль
Клиент: Arn.Resp:15=11: — оки, только присвойте-ка переменной номер 15 значение 11.
… ну и дальше в том же духе, друг другу шлют значения переменных.
Клиент: Arn.Fin — спасибо за работу, на этом я отключаюсь.
Сервер: закрывает сокет.
Ну в общем как-то так
САБ (06 January 2012 — 01:18) писал:
Скорее всего в описании встроенного протокола обмена X-plane — там как раз UDP.
Сообщение отредактировал vitabutch: 06 January 2012 — 02:47
САБ (06 January 2012 — 01:18) писал:
Добавлено: нашел. «более свежее» — это то, что по этой же ссылке в разделе «версия 1.7»
А вот оно продается готовое:
По мере своих возможностей.
Мне кажется, что всякие преобразователи УСБ- ЛПТ не решат задачу. В тренажере использовано нестандартное применение порта принтера. Порт принтера превращен в 12 разрядную шину данных на вывод информации и 4 разрядную на ввод.
ra3dcs (06 January 2012 — 14:58) писал:
У буржуев это называется bitbang, в русскоязычной среде сложилось устойчивое название «шевеление ногами». Так работают все простые программаторы на LPT. Да, «обычные» переходники USB-LPT такое делать не позволяют, у этого же отдельно отмечено, что он это умеет. Более того, написано, что его драйвер перехватывает и корректно отрабатывает так любимые вами команды out.
Или, хотите, я напишу вам на меге8 программу, которая будет принимать по ком-порту строки «10100010001» и отображать эти нолики-единички на своих ногах, а по изменению входных ног отсылать аналогичные строки обратно в ком-порт? Вот вам и будет избавление и от LPT, и возможность работать с любой операционкой.
САБ (06 January 2012 — 15:39) писал:
Сергей спасибо!
Но как говорит наш Босс «Мы не ищем легких путей!»
ra3dcs (07 January 2012 — 10:30) писал:
Но как говорит наш Босс «Мы не ищем легких путей!»
ваш Босс — дурак
так ему можете и передать 
ra3dcs (07 January 2012 — 10:30) писал:
Но как говорит наш Босс «Мы не ищем легких путей!»
Странно. По вашим веткам казалось, что цель ваших работ — строить кокпиты а не плакать, колоться, но продолжать есть кактус. Складывается какое-то неоднозначное ощущение. Уже не первый раз предлагаю вам помочь, сделать что-то совершенно бескорыстно, а в ответ либо тишина, либо «не ищем легких путей». Мне нравятся ваши проекты, ваша кабина Л-29 была одним из двух проектов (второй — кабина Sly), прочитав о которых мне захотелось строить что-то свое.
У меня тут родилась еще более красивая идея — у вас ведь наверняка используются М-джои, и наверняка есть возможность собрать еще один. Могу написать прошивку для него, с которой мджой будет прикидываться ком-портом и принимая какие-то текстовые строки шевелить ногами. Ну и внешние воздействия на ноги посылать в этот ком-порт вашей программе.
САБ (10 January 2012 — 16:11) писал:
Сергей, СПАСИБО Вам большое за заботу, но складывается следующая ситуация.
Чтобы построить хороший проект железный кабины, нужна команда как минимум из трех человек. (программист, электронщик и кто будет заниматься самими железками). В моем случае получается совмещение всех в одном лице. На мне висят два незавершенных проекта в планах еще один (кабина МиГ-21). Мне просто некогда сейчас заниматься еще электроникой, тем более, что элементная база электроники стала до того миниатюрная, что просто паять я их уже не могу. Любые изменения способа ввода вывода неизбежно повлекут за собой изменение в программе роутера, на что уйдет масса времени и сил (не факт, что еще все получится).
Сейчас появилась возможность возродить заброшенный проект Л-410, но он будет переоборудован в вариант Л-410ФГ, а это означает почти полностью перестроить кабину.
Мне для проекта Л-29 проще поставить два системных блока (если бы это помогло), оставить электронику как есть и переключиться на возрождение Л-410, там работы пока хватит и без электроники. А после будет видно, что делать дальше.
можно не делать ту часть работы, которую в не можете сделать физически.
Александр, у вас же есть как минимум одна плата УАС-Б, можно
попросить кого нибудь из электронщиков напаять вам еще плат
ну или в конце концов на заводе заказать, и будет вам счастье.
работа с основной частью приборов уже отлажена, осталось только
вытянуть данные, в качестве роутера можно использовать iocp+sioc
программировать там почти ничего не потребуется, и вообще у нас
тут уже пол форума эксперты по вытягиванию переменных из сима.
LISА (10 January 2012 — 18:38) писал:
можно не делать ту часть работы, которую в не можете сделать физически.
Александр, у вас же есть как минимум одна плата УАС-Б,…….
, и вообще у нас
тут уже пол форума эксперты по вытягиванию переменных из сима.
Андрей, у меня так же есть еще плата УАС Зверева, плата Bird, платы EZ-BUS, платы FS-BUS. Но ни одна из этих систем не может обеспечить полностью возросшие потребности в оживлении приборов железной кабины (в данном случае для меня).
А к чему вообще этот разговор, мы же не собираемся тут обсуждать достоинства и недостатки той или иной системы?
Стоит задача для проекта Л-29 использовать два системных блока. Выяснили, что вроде можно через iocp-сервер. Давайте это и обсудим, как установить и настроить iocp-сервер, как добавить и настроить на второй машине iocp-клиента?
А то (как Вы выразились) экспертов уже пол форума, а пользы пока нет!
ra3dcs (11 January 2012 — 14:09) писал:
Так клиента надо будет дописать в вашу программу.
САБ (11 January 2012 — 15:24) писал:
И как это примерно должно выглядеть?