Elite Games - Свобода среди звезд!
.
  » Самодельные панели управления для Elite: Dangerous | страница 3
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 3 из 4
На страницу: Пред.  1, 2, 3, 4  След. | Все страницы
Поиск в этой теме:
Канал Elite: Dangerous: «Самодельные панели управления для Elite: Dangerous»
RenderG
 2187 EGP


Модератор
Рейтинг канала: 12(1785)
Репутация: 244
Сообщения: 20260
Откуда: [OEG]
Зарегистрирован: 18.09.2006
Ну да, Трастмастеры, ВКБ и прочие дураки зря используют сдвиговые регистры в своих джойстиках и прочей переферии видимо. Не, я не претендую, просто мне не понятно, зачем идти по своему пути, наступая на грабли, которые уже давно решены, как, к примеру, с матрицей у тебя было.

Дребезг дебаунсом вполне себе очень даже и норм убирается.

Нагрузки там смешные абсолютно, и не влияют ни на что вообще.

Кстати, о шилдах.
У меня с 5-ю сдвиговыми регистрами (40 кнопок) и выходами на i2c и возможностью их в цепь объединять, заменив промикру на разъем в следующей плате и 4-мя осями, 6-ю светодиодами, управляемыми напрямую тумблерами, выходом на управляемые RGB светодиоды типо ws2812 или APA106 выводом на семисегментные цифропанели и всеми остальными выводами шилд под промикру вот такой новый получился. Но я сам не травлю, заказываю готовые платы заводские. В размере 95*49мм




Если кому надо - файл в спринте https://www.dropbox.com/s/7mb0p2pkt209bc8/rgcustm_2.5_i2c.lay6?dl=0
_________________
No More Mr. Nice Guy!
Смирись, Пилот!
Ты будешь жалок
Всего-лишь после
Пары палок... (с) Dandy

Последний раз редактировалось: RenderG (13:20 10-07-2017), всего редактировалось 2 раз(а)
    Добавлено: 13:15 10-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
Дебонсер с матрицей ну ащще не работал от слова совсем. Ни родной Bounce ни альтернативный Bounce2. Любое нажатие кнопок вызывало реагирование только первого столбца в ряду. Как только закомментил обработку дебонсером нажатий и сделал просто if digitalRead==HIGH - все заработало четко.

Кроме того при зажатии 4 кнопок одновременно девайс зависает. Матрица не очень удачное решение там где можно жмакнуть одновременно.

Последний раз редактировалось: NailMan (13:28 10-07-2017), всего редактировалось 1 раз
    Добавлено: 13:28 10-07-2017   
RenderG
 2187 EGP


Модератор
Рейтинг канала: 12(1785)
Репутация: 244
Сообщения: 20260
Откуда: [OEG]
Зарегистрирован: 18.09.2006
NailMan :
Матрица не очень удачное решение там где можно жмакнуть одновременно.
Матрица зло, а если матрица без диодов - то вообще адское зло. Гы-гы
_________________
No More Mr. Nice Guy!
Смирись, Пилот!
Ты будешь жалок
Всего-лишь после
Пары палок... (с) Dandy
    Добавлено: 13:34 10-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
Матрица с диодами конечно была(Шоттки поставил на стенде, что в наличии нашел). Схему со знакомыми спецами раз 10 пересобирали, исследовали - все должно было работать с демонсером, однако не работало. Убрали дебонсер - все взлетело. Ну а нестыкуемость матрицы с триггером Шмитта подтолкнуло к схеме точка-точка, так как в наличии были микрухи порт-расширителей.

Я вообще если что то делать начинаю, то только с тем что имею или быстродоставаемо.

Ну а заказывать у китайцев - это если на продажу. Я не делаю из этого хобби бизнес.

Этот проект всего-лишь некоторая тренировка перед более крупным проектом из области IoT для моделистов, как раз кнопки с аппаратным дебонсером являлась тренировкой для того проекта.
    Добавлено: 13:43 10-07-2017   
RenderG
 2187 EGP


Модератор
Рейтинг канала: 12(1785)
Репутация: 244
Сообщения: 20260
Откуда: [OEG]
Зарегистрирован: 18.09.2006
NailMan :
Ни родной Bounce ни альтернативный Bounce2.
Зачем для дебаунса библиотека? Всего то пара строк.

Код:
if (bitRead(switchVar[r], i) != bitRead(lastState[r], i)) {
        // сброс таймера дебаунса, используем вшитую тикалку аптайма,

        lastDebounceTime = millis();
      }
      if ((millis() - lastDebounceTime) > debounceDelay) {
        // если таймер минус прошлый таймер больше задержки debouncedelay, то
        состояние кнопки изменилось - шлем.

    //сохраняем состояние кнопки в конце цикла опроса этой кнопки.
     lastState[r] = switchVar[r];


Тут у меня регистры используются, посему кнопки - это массив switchVar[номер кнопки]

Весь опрос ВСЕХ кнопок на регистрах выглядит так, вместе с дебаунсом:

Код:
  //    *******************************************
  //          PUSH BUTTONS r = register number
  //           Starting with 2nd register
  //    *******************************************

  for (int r = 2; r <= num_registers - 1; r++) {
    for (int i = 0; i <= 7; i++) {
      if (bitRead(switchVar[r], i) != bitRead(lastState[r], i)) {
        lastDebounceTime = millis();
      }
      if ((millis() - lastDebounceTime) > debounceDelay) {
        if (bitRead(switchVar[r], i) != bitRead(switchState[r], i)) {
          switchState[r] = switchVar[r];
          if (bitRead(switchState[r], i) < 1) {
            Joystick.pressButton(i + ((r - 1) * 8));
            Joystick.sendState();
          }
          else {
            Joystick.releaseButton(i + ((r - 1) * 8));
            Joystick.sendState();
          }
        }
      }
    }
    lastState[r] = switchVar[r];
  }

_________________
No More Mr. Nice Guy!
Смирись, Пилот!
Ты будешь жалок
Всего-лишь после
Пары палок... (с) Dandy

Последний раз редактировалось: RenderG (13:47 10-07-2017), всего редактировалось 1 раз
    Добавлено: 13:46 10-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
Ну примерно так же я и делал еще до привлечения библиотеки дебонсера. Был взят пример из статейки про матрицу(с диодами) и он также не работал выдавая срабатывание первых кнопок в строке. Что то связанное с задержками как я понимаю. Ну его нафиг этот софтовый дебонсер! аппаратный надежней и не зависит от качества кнопки. Это у меня используются малошумящие кнопки с молоточками контактов, а если использовать простые кнопки(как у меня на регулировку подсветки и калибровки) - софтовый дебонсер не помогает. на стенде собрал под одну кнопку обработчик и тестировал с разными кнопками - заранее задержку не подгадаешь.
    Добавлено: 13:53 10-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
Ха! Косяки приводят к техническому прогрессу! В выводной плате на PWM не с той стороны поставил пятачки и чуть в стороне чем реально расположены на шилде(нет нигде его шаблона, а штенгель куда-то пролюбился), линейкой корявой мерял. В общем решил полнорстью на фоторезист перейти. Купил ламинатор, достал старые запасы немного просроченного фоторезиста и переделал плату - все получилось очень супер. Ламинатор творит чудеса. Жалко что паяльную маску ждать еще месяц, так бы вышло как с производства
    Добавлено: 15:14 13-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
Хотелось бы поделиться чудой что родилась на сегодняшний момент в части EDPanel.

- за две недели освоил и полностью перешел на фоторезист -даже с просроченным на полтора года все нормально получается (без фейлов почти). Несколько плат убил)как косяками разводки так и технологическими неудачами.
- купил кошерный 4 вальный ламинатор. Теперь прикатывается фоторезист идеально.
- допилил плату вывода PWM под DeekRobot PWM. Несмотря на то что это клон Adafruit шилда, оказалось что в нем были мутации в расположении выводов относительно сокета ардуины.
- Это моя крайняя плата с лужением. заказал UV Cover Mask для паяльной маски(трех цветов взял). Следующие изделия(контроллер полива домашних лимонов) будет как с завода выглядеть.

Все фотки(должно работать, сервер починил)
http://nailalex.dyndns.org/gallery/index.php?level=album&id=109

Там же есть сравнительные фотки плат выполненных ЛУТом и фоторезистом(все промежуточные кривые платы).

Последний раз редактировалось: NailMan (23:20 16-07-2017), всего редактировалось 1 раз
    Добавлено: 23:15 16-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
предпредпоследняя миля перед выходом в космос с панелькой!

спаял лицевые панели игрового девайса и зажгутовал провода все перед припайкой к выводным платам контроллера(красные - ЛЕДики, желтые - кнопки).

Остается спаять все и допилить общую групповую анимацию в скетче и отладить контроллер(на 5 кнопке что-то муть была при маленькой конфигурации со стенда) и в части софта и начинки будет готово.

Остается сделать под все это корпус из пеноплекса, стеклоткани и смолы с куском стали. ну и на пленке напечатать надписи на кнопках и вложить внутрь.

Фоточки

Крупнее

Крупнее

Крупнее

Последний раз редактировалось: NailMan (18:14 22-07-2017), всего редактировалось 1 раз
    Добавлено: 18:09 22-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
Вот что я называю кнопочной анимацией!

http://www.youtube.com/watch?v=UKFPGCUBa8I

Сейчас есть 4 типа анимации включения подсветки панели(интро) и анимация нажатия. Можно сделать еще анимацию выключения(пока просто гасится). Ну и еще надо процедуру калибровки визуализировать на кнопочном массиве.

Вся анимация задается в двух массивах по числу активных кнопок - номера стартовой анимации(0-3) и задержки в мс от момента включения. Каждая кнопка может иметь любое сочетание.

Как в дискорде подсказали не так давно, можно прикрутить модуль ускорений и сделать периодическое включение на произвольной кнопке хаотического мигания как при хреновых контактах(по типу как в правом верхнем углу) - тогда хлопок по корпусу устройства "вылечит" "барахлящие кнопки" Хы...

Последний раз редактировалось: NailMan (15:30 24-07-2017), всего редактировалось 1 раз
    Добавлено: 15:25 24-07-2017   
B_SINGLE_S
 65 EGP

Рейтинг канала: 4(68)
Репутация: 4
Сообщения: 102

Зарегистрирован: 17.09.2015
NailMan вы меня практически "контузили" Гы-гы Раскройте "секрет швейной машинки"! Ну ведь не просто так же она появилась в кадре , а ? По-секрету... Такая интрига ...
    Добавлено: 18:06 24-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
B_SINGLE_S :
NailMan вы меня практически "контузили" Гы-гы Раскройте "секрет швейной машинки"! Ну ведь не просто так же она появилась в кадре , а ? По-секрету... Такая интрига ...

Да там нет интриги, просто сейчас это самое очищенное место!

А так вот для чего она
http://nailalex.dyndns.org/egoparamodels/
    Добавлено: 18:09 24-07-2017   
PedaleCreator
 104 EGP

Рейтинг канала: 9(1162)
Репутация: 1
Сообщения: 1256

Зарегистрирован: 03.09.2014
B_SINGLE_S :
"секрет швейной машинки"!

Для "прошивки" контроллеров! Очевидно же!
_________________
CMDR Fl@ck
    Добавлено: 18:11 24-07-2017   
B_SINGLE_S
 65 EGP

Рейтинг канала: 4(68)
Репутация: 4
Сообщения: 102

Зарегистрирован: 17.09.2015
NailMan :
А так вот для чего она
http://nailalex.dyndns.org/egoparamodels/

Это был уже - "контрольный в голову"... Параплан на швейной машинке своими руками - по хорошему завидую вашей "усидчивости" Давай пожмем друг другу руки!
    Добавлено: 18:22 24-07-2017   
RenderG
 2187 EGP


Модератор
Рейтинг канала: 12(1785)
Репутация: 244
Сообщения: 20260
Откуда: [OEG]
Зарегистрирован: 18.09.2006
Пленку макетным ножом обрезать удобно. Уже прикленную. Тогда не получится таких рваных краев. А вокруг прямоугольных кнопок вздутия тоже плохо. Кстати, вообще рекомендовал бы вместо пленки баллон с краской использовать. Или сразу надо было брать чОрный поликарбонат.
_________________
No More Mr. Nice Guy!
Смирись, Пилот!
Ты будешь жалок
Всего-лишь после
Пары палок... (с) Dandy
    Добавлено: 17:18 28-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
Пузырики потом разойдутся. я на жидкость для моников сажал, потом размажется. Краску совершенно не хочу - воняет потом сильно и долго. Я по хобби периодически крашу стеклопластики(капоты самолетные, фонари) - намаялся с красками. Оракал самое то. Края платы я пройду потом модельным ножом, пока не к спеху, к тому же я подумываю еще как сделать отбортовку корпуса девайса вокруг панелей кнопочных - пока видится так что даже недорезанные края не помешают внешнему виду.

Кстати именно и-за нежелания красить я буду корпус девайса делать из уже подцвеченной черным колером смолы делать. Он уже сразу черный будет и не будет стираться. Я так пропеллеры для модели паралёта в матрице делаю - черные как уголь.
    Добавлено: 17:24 28-07-2017   
RenderG
 2187 EGP


Модератор
Рейтинг канала: 12(1785)
Репутация: 244
Сообщения: 20260
Откуда: [OEG]
Зарегистрирован: 18.09.2006
NailMan :
Как в дискорде подсказали не так давно, можно прикрутить модуль ускорений и сделать периодическое включение на произвольной кнопке хаотического мигания как при хреновых контактах(по типу как в правом верхнем углу) - тогда хлопок по корпусу устройства "вылечит" "барахлящие кнопки" Хы...

Акселерометр тут лишним будет. Есть копеечный девайс, которого хватит за глаза. Типо jtron sw-520d. Оно стоит 20 рублей и устроено до безобразия просто. Два контакта и шарики внутри малюсенького корпуса как от маленького конденсатора. При вибрации начинает ловить/терять контакт.

добавлено спустя 2 минуты:
Кстати. Если крепить твои понели поверх. И подсветить снизу, то контуры будут светиться. Ток стекло заматовать нулевкой. Улыбка
_________________
No More Mr. Nice Guy!
Смирись, Пилот!
Ты будешь жалок
Всего-лишь после
Пары палок... (с) Dandy

Последний раз редактировалось: RenderG (17:31 28-07-2017), всего редактировалось 1 раз
    Добавлено: 17:31 28-07-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
Передумал я с датчиком ускорений(у меня их навалом если честно лежит) - слишком много съедает библиотека под него, да и излишество явное.

С панелью поверху подумаю. как раз сейчас собирался я начинать собирать болванку корпуса, может и поверху сделаю. Только подсветка - лишний ток на порт USB будет давать. 10 штук уже 0.1А.

Я сейчас к сожалению не могу замерять полный ток на порту, надо или датчик тока подпаивать в разрез(на эффекте холла), или амперметр. В 0.5А точно вписываюсь. Подсветка жрет 210-230мА. контроллер еще где то 150. В принципе есть еще резервы.
    Добавлено: 10:35 29-07-2017   
RenderG
 2187 EGP


Модератор
Рейтинг канала: 12(1785)
Репутация: 244
Сообщения: 20260
Откуда: [OEG]
Зарегистрирован: 18.09.2006
Тем временем китайцы напечатали мне платок для новых панелей управления. Гы-гы


_________________
No More Mr. Nice Guy!
Смирись, Пилот!
Ты будешь жалок
Всего-лишь после
Пары палок... (с) Dandy
    Добавлено: 14:02 01-11-2017   
NailMan
 69 EGP

Рейтинг канала: 8(892)
Репутация: 6
Сообщения: 237
Откуда: Москва
Зарегистрирован: 24.07.2016
Неплохо неплохо!

Я тут все в делах и в работе, но собрал девайс на платах с корявой маской(не шелкографией делал), попалил чип PWM на готовом шилде что использовал первоначально(один порт из 16 сгорел как то) и в итоге переразвел девайс заново сразу с чипами PWM на моей плате. В итоге увеличил с 24 кнопок до 36(32 уйдут в джойстик в комп, остальные сервисные), светики вывел через полевички(причина палева порта PWM была), уменьшил высоту девайся на 1 этаж и уже напечатал шаблончики для фоторезиста. Сегодня завтра засвечу плату и в выхи буду шелкографией маску паяльную делать уже по цивильному. Научился с ними работать.
Времени катастрофически нет закончить проект. Начал шкурить болван корпуса, половинку сделал, а потом накатило.
    Добавлено: 15:16 01-11-2017   
Канал Elite: Dangerous: «Самодельные панели управления для Elite: Dangerous»
На страницу: Пред.  1, 2, 3, 4  След. | Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Аргумент должен быть неожиданным и сногсшибательно убедительным - примерно как удар дубиной сзади. Тогда "количество" ответных аргументов значения уже не имеет. (Voha)

  » Самодельные панели управления для Elite: Dangerous | страница 3
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18