???
Математика на уровне МГУ

Страница 1 из 8 12345 ... КрайняяКрайняя
Показано с 1 по 25 из 226

Тема: USB контроллер на Микрочипе

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    USB контроллер на Микрочипе

    По просьбе многих, открываю новый тред отпочковавшийся от
    http://www.sukhoi.ru/forum/showthrea...&page=32&pp=25
    ----------------------------------------------------------------
    Я тут практически закончил разработку USB контроллера для самодельщиков. Штука эта будет такая:

    Модель 1:
    http://www.lbodnar.dsl.pipex.com/joystick/
    8 аналоговых входов по 10бит разрешения каждый
    12 кнопок либо независимых, либо матрицей 6x6
    (вариант 10 аналоговых 10битных входов + 10 кнопок или 5x5 матрица, но Win не видит больше 8 осей на одном джойстике, поэтому он будет виден под Виндами как два джойстика)


    Модель 2:
    6 квадратурных декодеров, два из которых с оцифровкой до скорости 150кГц (для кодеров типа 2000линий на оборот) с разрешением 20бит
    8 цифровых кнопок

    Модель 3:
    100 кнопок в конфигурации матрицей 10x10.

    Общие для всех трех:
    Чип с 28 ножками в обычном DIP корпусе (Microchip PIC18F2550)
    Все что нужно для подключения: 4MHz кварц, два конденсатора и USB разъем (или сразу кабель)
    Питание от USB порта
    Full-speed USB (12Mbit), частота обновления всех каналов - 1000 раз в секунду (период 1мсек)
    Драйверы не нужны (стандартное устройство в Win/Mac/Linux)

    Я не хочу делать плату контроллера потому что цены подкрадываются со спины: плата, кварц, сборка, упаковка, тестирование, etc.

    Цена чипа: $15.

    Где-то в середине года у меня будет просто ОДНА модель - чип, которых можно переключать в любую конфигурацию из интерфейсной программки под Win/Mac/Linux.

    Честно говоря, я cтолько времени потерял с мышиными декодерами... это просто убийство времени, а результат - 30 импульсов на оборот. Самое мерзкое, что они теряют импульсы из-за фиговых сенсоров. Для мыши это не имеет значения, а в кодере после прогона 1000 импулсов в одну сторону обратно возвращаются только, например, 996, поэтому центровка джойстика постоянно дрейфует в процессе.

    И тут я открыл глаза! Есть готовые декодеры типа http://www.encoder.com/model755a-shaft.html с разрешением 2000 импульсов на оборот (до 10000 если очень нужно) это уже что-то т.к. 2000 импульсов дают разрешение в 8000 позиций на оборот (считаем-то фронты). Аналоговые потенциометры отдыхают! Купить их можно на eBay за $20-30. Проблема в том, что если человек крутанет этот декодер (или все-таки энкодер?) с приличной скоростью, импулсы посыпятся с такой частотой, что даже хороший контроллер, если он еще хоть чем-то занят просто их не успевает обработать и все работа - насмарку, центровка опять съезжает. В ATMega16 нет USB контроллера, поэтому MJoy использует аппаратную работу с USB - разбирает его по битам и собирает обратно. Это занимает безумное количество времени и делает применение крутых кодеров невозможным. Собственно поэтому я и ввязался в то, что у меня получилось в итоге.

    Идея такая - продавать самодельную плату типа MJoy16 людям, которые потом все равно все выходные с паяльниками сидят глупо. Поэтому я убиваю время над мудрым софтом внутри (USB - это не RS232!), а все остальное любой самодельщик может сделать буквально за 15минут и потратить на это $2-3. Вот такая вот идея.

    Уффф, пальцы отваливаются!

    P.S. Кстати, если все-же хочется сделать квадратурных кодер самому, то лучше раскурочить старый струйных принтер. Там часто используется осевой кодер на ~500 линий/оборот и линейный - такая прозрачная полоска с тоненькими линиями (720dpi?). Сенсоры (обычно Agilent) как бы обхватывают их и выдают уже хороший квадратурных сигнал TTL уровня. У них 4 ножки и им только нужно +5v для питания и все.
    Крайний раз редактировалось lbodnar; 01.03.2006 в 20:23.

  2. #2
    Я отправил пару образцов для тестов и, как не странно, все в один голос хотят аналоговые входы в первую очередь. Так что кодеры пока отошли на второй план.

    Окончательный вариант версии с аналоговыми входами получился такой:

    8 x 10-битных входов от резисторов 10к-100к
    32 кнопки
    HAT селектор вида (отдельные четыре кнопки)
    частота отсчетов - 300Гц

    Проверен под Виндами и Мас ОС Х. Краткие чертежики здесь -
    схема подключения выводов
    матрица кнопок
    USB разъем
    просто переменник
    Винды
    Мак

    Я, также, сделал модель с 10 аналоговыми входами и 25 кнопками, но из-за традиционного ограничения в DirectX на только 8 осей, пришлось один контроллер отображать как два виртуальных джоя - один с 6 осями, другой - с 4мя. Работает прекрасно, но как-то не нравиться мне. 8 осей и 32 кнопки, по моему - самое то.

    В конце концов их можно несколько прицепить, т.к. у них у всех разные серийные номера.

    Кстати, я заметил, что многие жалуются на большое время реакции высоко прецизионных джоев типа когуара. Я не знаю как они добиваются своей точности, но в реальности честный 15битный ацп требует супераккуратной аппартуры, чистейшего питания и стоит очень приличных денег. Даже 12битный ацп в джойстике уже вряд-ли нужен. Так что я подозреваю тут просто интерполяция где-то замешана.

    Я тоже могу сделать точность в 15бит подмешав в оцифровываемый сигнал белый шум и просто сложив результат 32 измерений. Задержка времени реакции гарантирована! Кстати, я оцифровываю четыре раза и потом усредняю сохраняя 10бит точности, хотя можно было бы и до 12 раздуть. Сейчас за 2 миллисекунды вполне хватает времени четыре раза оцифровать 8 каналов, усреднить результаты, отсканировать кнопки и отправить результат в компьютер через USB. C честными 10 битами и 3 миллисекундами "задержки" можно жить.
    Крайний раз редактировалось lbodnar; 15.01.2006 в 22:46.

  3. #3

    Кодеры

    Кстати, тут кто-то ссылку на дорогущий кодер приводил. Они бывают двух типов - разностные (квадратурные) и абсолютные.

    Абсолютный кодер в любой момент может точно сказать свое текущее состояние, например +23469234. Разностный - только +1 и -1 да и то в квадратурном коде. Абсолютные кодеры напичканы умной электроникой, часто имеют внутри батарейку и часто подключаются через одну из промышленных шин (Fieldbus, CAN, и тп) хотя есть и монстры с 20 битным параллельным выходом. Они не только дороже, но и с ними труднее работать из контроллера, хотя и нет проблемы с потерей ипмульсов - контроллер всегда узнает точное положение кодера даже если он был занят чем-то другим (например, работал с USB)

    Да, так вот ссылка была на абсолютный кодер, поэтому он такой и дорогой!

  4. #4
    бешеный суслик Аватар для -=REA=-
    Регистрация
    21.10.2005
    Адрес
    Россия г.Киров
    Возраст
    46
    Сообщений
    368

    Question Ответ: USB контроллер на Микрочипе

    Microchip PIC18F2550 - его прошивать надо?
    Крайний раз редактировалось -=REA=-; 15.01.2006 в 20:25.

  5. #5

    Ответ: USB контроллер на Микрочипе

    Больше конроллеров шустрых и разных!

    Я не очень понял принцип распространения проекта: полностью открытый? Аля MJoy8? Али прошивку/мс покупать надо?

    А на счёт энкодеров не врубился: их можно приспособить? А из принтеров?
    IMHO, на тримерах самое то, особенно относительные. Какое ещё применение?
    Есть только МиГ между прошлым и будущим.

  6. #6

    Ответ: USB контроллер на Микрочипе

    Проект (пока, во всяком случае) не открытый т.к. его будущее не совсем ясно.

    Что касается кодеров (как же они все-же по-русски правильно зовуться?!) из принтеров то нет никаких проблем - вот они, эти два из HP 2000 вытащены. Линейный очень удобен тем, кто гражданский штурвал делает. Серые полосы по краю диска и на полоске на самом деле это очень плотно расположенные штрихи. А у блока считывания четыре контакта - земля, +5в и два квадратурных выхода уже TTL уровня. Мечта самодельщика.

    Как я уже писал, мне нужны кодеры, т.к. я делаю систему нагрузки штурвала, но люди мне стали писать - "хотим точно так-же, только с аналоговыми входами!" поэтому пришлось в первую очередь заняться этим вариантом...
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	IMG_1166.jpg 
Просмотров:	694 
Размер:	40.6 Кб 
ID:	50204  

  7. #7
    Забанен Аватар для catfish
    Регистрация
    22.11.2001
    Адрес
    Moscow
    Возраст
    43
    Сообщений
    1,250

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от sergeyk
    Больше конроллеров шустрых и разных!

    Я не очень понял принцип распространения проекта: полностью открытый? Аля MJoy8? Али прошивку/мс покупать надо?

    А на счёт энкодеров не врубился: их можно приспособить? А из принтеров?
    IMHO, на тримерах самое то, особенно относительные. Какое ещё применение?
    Больше-то оно больше, тока было бы лучше. Пока ничем конкретным от МJOY Миндога не отличается. Кроме одного - за прошивку еще даже сам автор не знает сколько запросит (((((

    P.S. Матрица из диодов для кнопок - не самое правильное и технологичное решение.

  8. #8
    Забанен Аватар для Orion33
    Регистрация
    17.07.2004
    Адрес
    левый берег Невы ;)
    Возраст
    41
    Сообщений
    1,209

    Ответ: USB контроллер на Микрочипе

    И сколько цена сего девайса вырисовывается?

  9. #9

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от Orion33
    И сколько цена сего девайса вырисовывается?
    Пока - не более $15.

  10. #10

    Ответ: USB контроллер на Микрочипе

    Вот для развлечения - два из моих кодеров. Первый - многооборотный абсолютный на 1024 позиций на оборот (кажется, несколько сотен оборотов.) Вывод позиции - последовательный синхронный интерфейс на скорости 125кбит. Каежется, его можно было перепрограммировать на 4096 поз/оборот т.к. физически там плотность штрихов именно такая внутри, просто он загрублен программно.

    Второй - обычный квадратурный на 2000 импульсов. Да еще и в водонепронецаемом корпусе

    Прошу заметить - абсолютный кодер выдает уже готовую вычисленную позицию, так что 1024 они и есть 1024 позиции, больше не выжать. У квадратурного на выходе две последовательности импулсьов, так что после декодирования точность отсчета увеличивается в четыре раза, так что 2000 импульсов превращаются в 8000 позиций.

    Надеюсь, не утомил! :expl:
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	IMG_1165.jpg 
Просмотров:	446 
Размер:	176.7 Кб 
ID:	50206   Нажмите на изображение для увеличения. 

Название:	IMG_1164.jpg 
Просмотров:	368 
Размер:	152.3 Кб 
ID:	50207  

  11. #11
    Забанен Аватар для Orion33
    Регистрация
    17.07.2004
    Адрес
    левый берег Невы ;)
    Возраст
    41
    Сообщений
    1,209

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от lbodnar
    Пока - не более $15.
    Дайте две!

    Рассуждения на тему "1024 отсчета - это много или мало?"
    Может не совсем по теме, но в соседней этот вопрос поднимался.

    На какой угол отклоняется среднестатистическая палка? Напольники не в счет! 30 градусов. В сумме туда-сюда получается 60 град. Т.о. на один отсчет приходится примерно 0,06 град. или 0,06*pi/180 = 0,001 радиан.
    Если отклонить ручку на такой угол, то наружная точка оси джоя совершит перемещение r*sin(0,001). r - радиус оси джоя. Для малых углов справедливо равенство sin(x) = x, поэтому величина этого перемещения составляет примерно 5*0,001 = 5 мкм (диаметр оси берется порядка 1см - на Еве такие. Если он меньше, то все гораздо хуже ).
    Из чисто логических соображений ясно, что механический люфт должен быть меньше, чтобы почувствовалось это перемещение...

    ВНИМАНИЕ, вопрос! В каком серийном джое люфты меньше 5 микрон??? Правильно, таких джоев нет! И даже с 50мкм тоже нет. Минимум - 0,1 мм. То есть 128 значений более чем достаточно...

    Вывод таков: не верным путем идете, товарищи! Механику надо сначала хорошую иметь!

  12. #12

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от Orion33
    Рассуждения на тему "1024 отсчета - это много или мало?"
    Я вообще-то все это дело под штервал делал. На маленькой Цессне ход штурвала - 165мм вперед-назад и 90 градусов в обе стороны. При тихой погоде на посадке обычно крутишь его туда-сюда буквально градусов на пять. В следующий раз на машине будете рулить - посмотрите насколько на трассе руль отклоняется из двух полных оборотов. Так вот, 5 градусов от 180 составляет около 3%. Мне хочется чтобы это были плавные 3 процента а не как на лифте - вверх/вниз. "Плавные" означает состоять они должны из 25-30 шагов. Вот и получаем в итоге 1000 шагов на весь ход штурвала - это минимум для комфорта. Конечно, на штурмовиках можно и с 2 битным джойстиком летать делая ШИМ правой рукой.

    На полный ход я штурвал вообще никогда не видел чтобы отклонялся, ну кроме, разве что до стопора на себя чтобы перед сваливанем в штопор скорость погасить да еще до стопора влево/вправо на рулежке при сильном боковом ветре.

    А штурвал на кодере делается абсолютно элементарно без всякого люфта - сам кодер и является осью вращения и одной из опор штурвала. Там подшипники очень высого класса точности стоят без люфтов и нагрузку он держит киллограм 10-20. Еще один подшипник на ось крена ставится и все. С джойстиком - больше возни, это правда.
    Крайний раз редактировалось lbodnar; 16.01.2006 в 04:54.

  13. #13

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от Orion33
    Дайте две!

    Рассуждения на тему "1024 отсчета - это много или мало?"
    Может не совсем по теме, но в соседней этот вопрос поднимался.

    На какой угол отклоняется среднестатистическая палка? Напольники не в счет! 30 градусов. В сумме туда-сюда получается 60 град. Т.о. на один отсчет приходится примерно 0,06 град. или 0,06*pi/180 = 0,001 радиан.
    Если отклонить ручку на такой угол, то наружная точка оси джоя совершит перемещение r*sin(0,001). r - радиус оси джоя. Для малых углов справедливо равенство sin(x) = x, поэтому величина этого перемещения составляет примерно 5*0,001 = 5 мкм (диаметр оси берется порядка 1см - на Еве такие. Если он меньше, то все гораздо хуже ).
    Из чисто логических соображений ясно, что механический люфт должен быть меньше, чтобы почувствовалось это перемещение...

    ВНИМАНИЕ, вопрос! В каком серийном джое люфты меньше 5 микрон??? Правильно, таких джоев нет! И даже с 50мкм тоже нет. Минимум - 0,1 мм. То есть 128 значений более чем достаточно...

    Вывод таков: не верным путем идете, товарищи! Механику надо сначала хорошую иметь!


    Я вот еще в догонку хочу спросить сколько бит та переменная которая отвечает за положение штурвала в Иле ???
    Я могу с 200% уверенностью сказать что в FS эта переменная всего 8 бит и там хоть суй ему 16-ти битную переменную , все равно позициЙ ручки с симе будет 256 !!!... Как дела в ИЛ2 обстоят ? Ктонибудь считал количесво ступеней полного хода виртуальной ручки с кабине ? ПОвторю , что в FS - всего 256 ступенек на полный ход ЛЮБОЙ АНАЛОГОВОЙ ОСИ !.. ПОэтому что на входе сима из ви нды будет диапазон оси 1024 , что 65536 - все автоматом перемасштабируется в диапазон 256 ступенек..

  14. #14
    Забанен Аватар для Orion33
    Регистрация
    17.07.2004
    Адрес
    левый берег Невы ;)
    Возраст
    41
    Сообщений
    1,209

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от Ezdok
    Я вот еще в догонку хочу спросить сколько бит та переменная которая отвечает за положение штурвала в Иле ???
    Я могу с 200% уверенностью сказать что в FS эта переменная всего 8 бит и там хоть суй ему 16-ти битную переменную , все равно позициЙ ручки с симе будет 256 !!!... Как дела в ИЛ2 обстоят ? Ктонибудь считал количесво ступеней полного хода виртуальной ручки с кабине ? ПОвторю , что в FS - всего 256 ступенек на полный ход ЛЮБОЙ АНАЛОГОВОЙ ОСИ !.. ПОэтому что на входе сима из ви нды будет диапазон оси 1024 , что 65536 - все автоматом перемасштабируется в диапазон 256 ступенек..
    Я уже говорил и еще раз повторю: ручка - это одна модель, плоскости - другая, а отработка поведения - совсем другая. И у каждой имеет место быть своя дискретность.

  15. #15

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от Ezdok
    Я вот еще в догонку хочу спросить сколько бит та переменная которая отвечает за положение штурвала в Иле ???
    Я могу с 200% уверенностью сказать что в FS эта переменная всего 8 бит и там хоть суй ему 16-ти битную переменную , все равно позициЙ ручки с симе будет 256 !!!
    Я - железо делаю и мне не очень интересно какие у софта сейчас ограничения - это не должно стать тормозом прогресса.

    Я точно знаю что под Mac OS X у X-Plane, например, как минимум 16-битное разрешение для всех осей. Вообще-то там плавающая точка с двойной точностью используется, поэтому если и есть какое ограничение - так это только ограничение выхода данных с HID устройства (не более 32 бит на одну переменную.) Хотя тот же X-Plane под Виндами почему-то с лету устанавливает пределы переменных в DirectInput в +-100 и т.к. результат используется в целочисленном виде, получаем всего 200 шагов. Я этот кусок кода долго смотрел, но так и не понял, зачем Остин это сделал - наверное он его сто лет назад написал, не зная, что DirectInput все сводит к целым числам, а т.к. это было под Виндами, то ему не особо на глаза попадалось потом. Я этот вопрос у него выясню.

    Хотя, кто X-Plane видел, знают, что там любую переменную физики процесса можно вытащить из программы или туда же загнать либо через плагин либо через UDP. Я посылал 16битную позицию штурвала на кодере по сети через UDP и все было просто супер, как маслянное! Поэтому заметил глюк только после того как джойстик напрямую подключил. Так что кто очень хочет может написать программульку на питоне, которая считывает позицию джойстика и напрямую впрыскивает это в X-Plane с любым разрешением (на том же компьютере) - для многих это не составляет труда, нужно только один раз сделать. То же, наверняка, можно и в FS.

    Заморочки софта не должны сдерживать хард. И делать хард из расчета на то, что софт все равно кривоватый тоже не гоже (это я про китайский ширпотреб.) Вот так я себе думаю...

    А то что я делаю я все равно не брошу, пусть оно никому и не нужно.

  16. #16
    Механик
    Регистрация
    19.02.2005
    Адрес
    Odessa-Mama
    Возраст
    64
    Сообщений
    498

    Ответ: USB контроллер на Микрочипе

    если честно то я тоже пока не вижу существенной разници от миндоговского , энкодеры . вещь дорогая и не всем доступная , линейность . я уже говорил , на угловых датчиках она почти линейная , какойто процент не в счет . все одно крмвые отклика ставят свои , шумы ?7.. ну незнаю , что еще.. а х.з. ! как я вижу следующий вариант..
    вариант для эстетов 2 оси на энкодерах (тока на осях джоя) остальные аналоговые , и самое главное ! возможность изменять кривые отклика на ходу !ведь согласитесь что каждый крафт требует сомх крмвых , да и ситуации разные , на посадке надо очень плавно рулить , бой по другому , бомбадировщик - третье , штурмовик . четвертое , гражданский - пятое , пусть это будет незначительное усложнение , или добавить опционально , тоесть потом в основную схему добавляеш чтото и она уже работает . ну и можно еще че добавить . типа индикации режима или номер загруженого профайла откликов

  17. #17

    Ответ: USB контроллер на Микрочипе

    - железо делаю и мне не очень интересно какие у софта сейчас ограничения - это не должно стать тормозом прогресса.
    ---
    Это понятно , порддерживаю и сам придерживаюсь такой политики. Софт-софтом , а жележо - совсем другая песня...

    К чему весь разговор :
    Наухо шипну общественности сухого - сейчас разрабатывается целый комплекс управляющего железа для FS .. Точнее для его части ПТ..
    Хотелось бы его юзать не только в FS2004
    Некоторые из скромных возможностей комплекса:

    128 модулей по 8 10-ти битных осей. Общее количество осей - 128*8...
    128 модулей кнопок/тумлеров. 1 модуль = 184 тумблера. общее количество кнопок в комплексе 128*184....

    128 модулей стрелочных индикаторов. 1 модуль стрелочников = 20 приборов.
    Общее количество стрелочных приборов 128*20....

    128 модулей 8-ми сегментных индикаторов. 1 модуль = 28 индикаторов по 8 цифр.
    общее количество индикаторов 128*28...

    128 модулей ламп накаливания, светодиодов , другой нагрузки.. 1 модуль = 30 ламп.. общее количество лам 128*30....

    128 модулей энкодеров. 1 модуль = 16 настоящих честных реал-тайм энкодлеров. ( кручу , мгновенно вижу результат с какойбы скоростью бы я не крутил энкодер). Общее количество 128*16....

    128 модулей прямого физического бинарного ввода в сим. 1 модуль = 1 32-х битная переменная. (нах нужен - незнаю , но пока в планах) общее количество модулй 128*1......

    Помимо помимо всего в планах нормальная конфигурация модулей в системе прямо из сервисного софта , и как всегда минимум контроллеров и обвязки..

    Вот чего и спрашиваю про переменные.. Хотелось бы этот комплекс не только под ПТ юзать , а скажем в X-PLANE или IL2 или LockOn.. с FS переменными вроде как понятно.. для этого есть FSUIPC и знающие головы , а вот с другими симами - пока темный лес. Еще интересует подключение внешнего железа к x-plane и протоколы обмена. Слишком обнадеживает x-plane как нормальный сим после выхода анонса FSX.. Покрайней мере в движке иксов гораздо больше фитч чем в FSX.
    Крайний раз редактировалось Ezdok; 16.01.2006 в 21:51.

  18. #18

    Ответ: USB контроллер на Микрочипе

    Отличная идея - через какой интерфейс подключается и сколько будет стоить? Я куплю одну штучку!

    Что касается X-Plane все просто - любой параметр из приведенных на экране можно вывести наружу или ввести обратно в программу динамически в любой момент. Конечно, те величины, которые собственно вычисляются внутри смысла вводить нет - для этого сим и создан.

    А протокол очень простой - UDP по сети или черз плагин непосредственно на том же компе. Вот например, как я считывю данные из СОМ1 и посылаю данные штурвала через UDP (моя очень старая программка - еще через компор работающая, но уже с 16битным положением штурвала). Если сравнить рисунок и текст, то видно, что что в седьмой позиции (там где стоит галка) - данные джойстика. Их восемь, но я посылаю только два - крен и тангаж. Данные x-plane кушает с плавающей точкой. Точно также и выводит - любую комбинацию из 900 параметров. Например, если поставить галку в позиции 50, то через UDP на указанный адрес сети будет выводится напряжение до восьми бортовых батарей. Ну и далее в том же духе.

    Удачи!

    # X-Plane 8.15 UDP Client

    import win32file
    import socket
    import struct
    import time
    import serial

    HOST = '' # Symbolic name meaning the local host
    PORT = 49000 # Arbitrary non-privileged port
    xplaneHost = ('192.168.0.61', 49000)
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.bind((HOST, PORT))

    ser = serial.Serial('COM1', 2400, timeout=1)

    while 1:

    byte1 = struct.unpack("1B", ser.read())
    byte2 = struct.unpack("1B", ser.read())
    byte3 = struct.unpack("1B", ser.read())
    byte4 = struct.unpack("1B", ser.read())

    pitch = byte1[0]*256+byte2[0]
    roll = byte3[0]*256+byte4[0]

    pitch = pitch / 32000.0 - 1.0
    roll = roll / 32000.0 - 1.0

    sendPacket = struct.pack('>5si8f', "DATA\n", 7, pitch, roll, 0, 0, 0, 0, 0, 0)
    s.sendto( sendPacket, xplaneHost )

    ser.close()
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	999.gif 
Просмотров:	335 
Размер:	83.4 Кб 
ID:	50288  
    Крайний раз редактировалось lbodnar; 16.01.2006 в 22:14.

  19. #19

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от Ezdok
    Наухо шипну общественности сухого - сейчас разрабатывается целый комплекс управляющего железа для FS .. Точнее для его части ПТ..

    Некоторые из скромных возможностей комплекса:

    128 модулей по 8 10-ти битных осей. Общее количество осей - 128*8...
    128 модулей кнопок/тумлеров. 1 модуль = 184 тумблера. общее количество кнопок в комплексе 128*184....

    128 модулей стрелочных индикаторов. 1 модуль стрелочников = 20 приборов.
    Общее количество стрелочных приборов 128*20....

    128 модулей 8-ми сегментных индикаторов. 1 модуль = 28 индикаторов по 8 цифр.
    общее количество индикаторов 128*28...

    128 модулей ламп накаливания, светодиодов , другой нагрузки.. 1 модуль = 30 ламп.. общее количество лам 128*30....

    128 модулей энкодеров. 1 модуль = 16 настоящих честных реал-тайм энкодлеров. ( кручу , мгновенно вижу результат с какойбы скоростью бы я не крутил энкодер). Общее количество 128*16....

    128 модулей прямого физического бинарного ввода в сим. 1 модуль = 1 32-х битная переменная. (нах нужен - незнаю , но пока в планах) общее количество модулй 128*1......

    Помимо помимо всего в планах нормальная конфигурация модулей в системе прямо из сервисного софта , и как всегда минимум контроллеров и обвязки..
    Как там у вас дела с производством этой штуки?

  20. #20
    Инструктор
    Регистрация
    15.12.2000
    Адрес
    Togliatty
    Сообщений
    1,545

    Ответ: USB контроллер на Микрочипе

    Э-х-х, блин.
    Я лично себе такую систему( в смысле комерческую) представлял полностью независимую от софта, повязаную скажем через CANaerospace или Arinc-429, к которой через враппер данные льет хоть МСФС, хоть ЛокОН. Как у больших все.

    Чтобы потом наработки и для реальных бортов переносить/отлаживать можно было, а получается опять пять-десять писюков с почти бытовыми УСБ-глюкалами натыкано, под управлением дельфийно/киликсовских заплаток. :-(
    Если кто-то в Грузии думал что русские простят 20.09.07 - он был категорически неправ !!!

  21. #21

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от LazyCamel
    Э-х-х, блин.
    Я лично себе такую систему( в смысле комерческую) представлял полностью независимую от софта, повязаную скажем через CANaerospace или Arinc-429, к которой через враппер данные льет хоть МСФС, хоть ЛокОН. Как у больших все.

    Чтобы потом наработки и для реальных бортов переносить/отлаживать можно было, а получается опять пять-десять писюков с почти бытовыми УСБ-глюкалами натыкано, под управлением дельфийно/киликсовских заплаток. :-(
    Без проблем, присылай спецификацию - в CAN или любой другой бас тебе закатаю что хочешь! Только платить тоже как большие будешь! :p

  22. #22

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от LazyCamel
    Э-х-х, блин.
    Я лично себе такую систему( в смысле комерческую) представлял полностью независимую от софта, повязаную скажем через CANaerospace или Arinc-429, к которой через враппер данные льет хоть МСФС, хоть ЛокОН. Как у больших все.

    Чтобы потом наработки и для реальных бортов переносить/отлаживать можно было, а получается опять пять-десять писюков с почти бытовыми УСБ-глюкалами натыкано, под управлением дельфийно/киликсовских заплаток. :-(

    Для реальных бортов, есть реальные люди. Которые и занимаются серьёзным делом.

    В нашем случае, народные умельцы развлекаются как могут.

  23. #23

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от LazyCamel
    Э-х-х, блин.
    Я лично себе такую систему( в смысле комерческую) представлял полностью независимую от софта, повязаную скажем через CANaerospace или Arinc-429, к которой через враппер данные льет хоть МСФС, хоть ЛокОН. Как у больших все.
    Похоже, эта идея, что говорится, витает в воздухе. См.:
    http://www.checksix-forums.com/showt...7&page=1&pp=10
    Хотя, гляжу я на эти горы проводов и думаю - а может, все таки, как шина, USB еще не умер? По мне лучше 20 самостоятельных USB блоков чем USB-CAN хост и 20 CANовских модулей. Хоть на 1км USB и не растянешь без оптики.

  24. #24
    Инструктор
    Регистрация
    15.12.2000
    Адрес
    Togliatty
    Сообщений
    1,545

    Ответ: USB контроллер на Микрочипе

    Цитата Сообщение от lbodnar
    Похоже, эта идея, что говорится, витает в воздухе. См.:
    http://www.checksix-forums.com/showt...7&page=1&pp=10
    Хотя, гляжу я на эти горы проводов и думаю - а может, все таки, как шина, USB еще не умер? По мне лучше 20 самостоятельных USB блоков чем USB-CAN хост и 20 CANовских модулей. Хоть на 1км USB и не растянешь без оптики.
    Тут выгода в другом. В CanAerospace во первых шина обычная двухпроводка, а во вторых по шине гоняются конкретные элементы. Т.е. хост выдает в шину "высота ххх", а девайсы висящие на шине самостоятельно понимают нужна ли им эта переменная.
    Т.е. хост даже не знает какие конкретно к шине приборы подключены, вплоть до подключения/отключения на горячую.

    А под УСБ придется рожать свой протокол диагностики и конфигурирования подключеных приборов как минимум.
    Если кто-то в Грузии думал что русские простят 20.09.07 - он был категорически неправ !!!

  25. #25

    Ответ: USB контроллер на Микрочипе

    В принципе, HID для таких вещей и был придуман c его заумными возможностями в плане всех 6 основных единиц СИ. А что стоит таблица органов тела которыми вызвано изменеие?! Типа "пользователь нажимает на данный рычаг левым ухом с силой 15Н." Что за смех?! Многие подумали что я шучу!? Так читайте талмуд про HID. Правда не все доступные органы, там, конечно явно указаны

    Хосту достаточно собирать информацию от всех устройств и ретранслировать ее для всех. HID как протокол никак к USB не привязан и часто так и пишут : "HID over USB" - я знаю что его и на обычном RS232 реализовывали.

    То же и для CAN - никто не заставляет по разделенной двухпроводной шине это передавать. Сообщения от устройств можно посылать как и положено в HID - по прерываниям, а широковещательный траффик можно закатать в пакеты и передавать хоть по bulk хоть по isochronous трубам. Если библиотеки нижнего уровня и уровня протокола изначально не перемешивать, то вполне можно сделать независимую от уровня интерфейса систему.

    Штука только в том, что и родной CAN и CAN over USB так и останутся забавным экспериментом до тех пор пока в магазине нельзя будет купить штурвал, воткунуть в компьютер и в тот же вечер полетать на славу.

    Стандарты - дело тонкое, их насильно не введешь (кроме ГОСТов, конечно!)
    Крайний раз редактировалось lbodnar; 06.02.2006 в 21:17.

Страница 1 из 8 12345 ... КрайняяКрайняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •