6 кнопок



    Постановка задачи



    Сутки добрые, Хабраюзеры!

    Пару недель назад представитель федерации по кикбоксингу нашего региона поставил мне задачу, сделать то, что позволит сократить время проведения соревнований на 30% методом автоматизации, кибернизации, механизации и прочей «ции». Человек он простой, прямой, и сильный так, что отказать у меня не было возможности. Задача была принята.



    Изучив регламент проведения боев, и вспоминая прошлые соревнования было установлено, что 20-30% от соревнований отнимают следующие пункты:
    1. сбор рефери судейских записок после трех раундов
    2. передача записок главному судье
    3. подсчет очков
    4. подведение итогов боя

    В среднем около 3-5 минут

    Задача встала в следующем: необходимо оперативно передавать информацию об очках главному судье, то есть «запрограммировать 6 кнопок».

    Выбор решения


    Для решения задачи были рассмотрены следующие аппаратные варианты:
    1. Манипуляторы Мышь на каждом судейском столе и передача от них информации
    2. Некий джойстик на каждом судейском столе и передача информации главному судье


    Первый вариант решения технической части задачи был отметен сразу же так как я себе сложно представлял как поведет себя USB мышь на расстоянии 15-20 метров от компьютера главного судьи.

    Второй вариант показался мне более реальным.
    Центром сбора данных я возложил на контроллер ARDUINO.

    Исполнение


    Этап 1 Общая схема




    На столах боковых судей размещается судейские пульты, которые имеют 2 кнопки: красная и синяя. Информация об нажатиях этих кнопок собирается контроллером Arduino и передается программе установленной на ноутбуке.
    Программа анализирует нажатия кнопок и выдает информацию по итогу боя и набранных баллах бойцом.
    Главный судья на основании результатов боя объявляет победителя.

    Этап 2 схема подключения




    Со схемой все просто, каждую отдельную кнопку ставлю на отдельный вход микроконтроллера. Резисторы использовал 2.4 кОм. Я не стал использовать сдвиговый регистр так как не умею с ним работать, а под текущую задачу PIN-ов хватает с лихвой.

    Изготовление


    Этап 3 Изготовление пультов



    Состав пульта:
    1. Коробочка
    2. Кусок монтажной платы
    3. Кнопки
    4. Кусочки проводов
    5. Красная и синяя изолента
    6. Коннектор RJ45









    Этап 4 Изготовление контроллера


    Состав контроллера:
    1. Коробочка из под отверток
    2. Arduino
    3. монтажная плата
    4. Кусочки проводов
    5. Изолента
    6. Пачкорды RJ-45
    7. USB провод




    Программирование


    Этап 5 программа для контроллера



    В программе для контроллера все взято из примеров. Ждем нажатия кнопок, учитывая дребезжание контактов и шлем все COM-порт:

    Скетч контроллера
    #include <Bounce.h> 
    #define BUTTON7 7 
    #define BUTTON6 6 
    
    #define BUTTON5 5 
    #define BUTTON4 4
    
    #define BUTTON3 3 
    #define BUTTON2 2 
    
    #define LED 13 
    int state7 = 0; 
    int prevstate7 = 0; 
    int state6 = 0; 
    int prevstate6 = 0; 
    
    int state5 = 0; 
    int prevstate5 = 0; 
    int state4 = 0; 
    int prevstate4 = 0; 
    
    int state3 = 0; 
    int prevstate3 = 0; 
    int state2 = 0; 
    int prevstate2 = 0; 
    
    Bounce bouncer7 = Bounce( BUTTON7,5 );  
    Bounce bouncer6 = Bounce( BUTTON6,5 );  
    
    Bounce bouncer5 = Bounce( BUTTON5,5 );  
    Bounce bouncer4 = Bounce( BUTTON4,5 );  
    
    Bounce bouncer3 = Bounce( BUTTON3,5 );  
    Bounce bouncer2 = Bounce( BUTTON2,5 );  
    
    
    void setup() { 
      Serial.begin(115200); 
      pinMode(BUTTON7,INPUT); 
      pinMode(BUTTON6,INPUT); 
      pinMode(LED,OUTPUT); 
    } 
    void loop() { 
    // 7 кнопка начало
      bouncer7.update ( ); 
     int value7 = bouncer7.read(); 
     if ( value7 == HIGH) { 
       digitalWrite(LED, HIGH ); 
       state7 = 1; 
     } else { 
        digitalWrite(LED, LOW ); 
        state7 = 0;   
     } 
     if(state7 != prevstate7){ 
       if(state7 == 1){ 
       Serial.println("7"); 
       } 
     } 
     prevstate7 = state7; 
    // 7 кнопка конец  
    // 6 кнопка начало
     bouncer6.update ( ); 
     int value6 = bouncer6.read(); 
     if ( value6 == HIGH) { 
       digitalWrite(LED, HIGH ); 
       state6 = 1; 
     } else { 
        digitalWrite(LED, LOW ); 
        state6 = 0;   
     } 
     if(state6 != prevstate6){ 
       if(state6 == 1){ 
       Serial.println("6"); 
       } 
     } 
     prevstate6 = state6; 
    // 6 кнопка конец  
    
    // 5 кнопка начало
     bouncer5.update ( ); 
     int value5 = bouncer5.read(); 
     if ( value5 == HIGH) { 
       digitalWrite(LED, HIGH ); 
       state5 = 1; 
     } else { 
        digitalWrite(LED, LOW ); 
        state5 = 0;   
     } 
     if(state5 != prevstate5){ 
       if(state5 == 1){ 
       Serial.println("5"); 
       } 
     } 
     prevstate5 = state5; 
    // 5 кнопка конец  
    // 4 кнопка начало
     bouncer4.update ( ); 
     int value4 = bouncer4.read(); 
     if ( value4 == HIGH) { 
       digitalWrite(LED, HIGH ); 
       state4 = 1; 
     } else { 
        digitalWrite(LED, LOW ); 
        state4 = 0;   
     } 
     if(state4 != prevstate4){ 
       if(state4 == 1){ 
       Serial.println("4"); 
       } 
     } 
     prevstate4 = state4; 
    // 4 кнопка конец  
    
    
    // 3 кнопка начало
     bouncer3.update ( ); 
     int value3 = bouncer3.read(); 
     if ( value3 == HIGH) { 
       digitalWrite(LED, HIGH ); 
       state3 = 1; 
     } else { 
        digitalWrite(LED, LOW ); 
        state3 = 0;   
     } 
     if(state3 != prevstate3){ 
       if(state3 == 1){ 
       Serial.println("3"); 
       } 
     } 
     prevstate3 = state3; 
    // 3 кнопка конец  
    // 2 кнопка начало
     bouncer2.update ( ); 
     int value2 = bouncer2.read(); 
     if ( value2 == HIGH) { 
       digitalWrite(LED, HIGH ); 
       state2 = 1; 
     } else { 
        digitalWrite(LED, LOW ); 
        state2 = 0;   
     } 
     if(state2 != prevstate2){ 
       if(state2 == 1){ 
       Serial.println("2"); 
       } 
     } 
     prevstate2 = state2; 
    // 2   кнопка конец  
    
    
    }
    




    Этап 6 программа для контроля ведения боя



    Во первых сразу же делюсь кодом Скачать исходный код.
    Весь код написан делфи XE3 так как учил его в школе. И небольшая описательная часть:
    1. Используя компоненту ComPort 4.11 подключаемся к com-порту и слушаем его
    2. в зависимости от настроек боя слушаем порт и результаты выводим в labelX.caption
    3. в конце боя выводим итог

    Программа писалась за одну ночь, поэтому о красоте не может быть и речи.

    Подготовка к соревнованиям



    Прокладка кабелей от центрального блока до боковых судей






    Работа судьи


    О том как работает программа





    Итоги соревнований


    По итогу двух дневных соревнований был разыгран полный комплект наград проведено более 150 боев.
    Благодаря сэкономленному времени спортсмены уехали по своим городам на 4 часа раньше планированного времени


    Выводы


    1. Оборудование отработало на ура, без единого сбоя
    2. Длина проводов от центрального блока до кнопок составляла 20 метров, при этом тестировал кнопки на 100 метровом кабеле
    3. В программе нужно переработать интерфейс, чем и занимаюсь к подготовке соревнований по боксу
    4. Программе необходимы дополнения связанные с выводом на табло и звуковыми эффектами
    5. Использование стандартного сетевого кабеля для подключения кнопок и разъемы значительно удешевило всю конструкцию в целом


    Спасибо за внимание.

    UPD-1 : По кнопкам.
    специально выбрал такие кнопки по следующим причинам:
    1. обратная связь тактильная. щелчек при нажатии
    2. кнопки не имеют свободного хода
    3. у кнопок со свободным ходом есть не приятность они срабатывают раньше чем чувствуется щелчок
    4. пользователи системы люди с мышцами, а не любители няшных кнопок
    5. обратная связь светодиодом бесполезна ибо взор судьи направлен на ринг, а не на руки

    UPD-2: бюджет данной сборки вряд ли перевалил 3000 руб

    UPD-3 По просьбам исходники на github
    Поделиться публикацией
    Комментарии 113
      +3
      Супер! Буквально вчера пересматривал бои братьев Емельяненко и про это же подумал!
        +8
        здорово, но без проводов было б лучше,
        как никак 21 век на дворе :)
          +10
          Из опыта проведения подобных мероприятий, включая профессиональные пиротехнические работы (фейрверки) неожиданно падающий радиоканал доставляет массу неприятностей. иногда даже бывает радиомикрофоны глючат. хотя и думал о радио канале, но так как собирал в последний момент, не до них было )
            +12
            Всё правильно сделали, радиоканал нужен там, где нужен — делали бы переносной датчик для футбольного судьи в поле, тогда да, без радио никуда. А так — провода дешевле, быстрее, надёжнее. А все эти «21 век на дворе» — это всё модники и хипстеры.
              +6
              Согласен.
              Можно как угодно хвалить феррари, но по дорогам России лучше УАЗик ))))
          +1
          Я правильно понимаю, что в пультах нет никаких усилителей? И ток от ардуинки идет по 20 м. кабелю к кнопке, а от неё обратно 20 м. к пинам ардуинки? И вы еще говорили, что тестировали на 100 м., т.е. ток проходил 200 м. и его хватало, чтобы установить 1 на дискретный вход?
            +1
            Да все верно!
            причем прошу обратить внимание кабель 100 метров был из 3-х сегментов по 20 метров и одному сегменту 40 метров (последний сегмент был снят с местной локальной сети) и подключен через дешевые конекторы которые есть на фото.
              0
              Класс :-) Интересно, какое предельное расстояние
                0
                Да теоретически очень большое, пока сопротивление кабеля не станет больше сопротивления подтяжки (и его ёмкость не будет влиять на скорость реакции).
                Практически — зависит от уровня помех. Поэтому на расстояниях более пары метров используют специальные протоколы, например RS-485.
                  0
                  согласен, так же размышлял, но проверил работает. дебют тоже прошел хорошо, но опять же время поджимало
                    0
                    Да тут не нужен никакой RS-485. Тут же частоты порядка ~Гц, индуктивность и емкость кабеля для них еще слишком малы, а от всяких ВЧ помех легко отсроиться ФНЧ.
                      +2
                      Тут — не нужен (что автор и показал). Я в общем. Работать будет, но мощная импульсная помеха может привести к ложному срабатыванию. Так что в ответственных применениях лучше так не делать.
                        +3
                        радиолюбитель победил в соревнованиях по кикбоксингу не проведя ни одного боя? :)
                  +6
                  Вообще, если линия идет на несколько десятков (а то и сотен, как ты сказал) метров, лучше на прямую к выходам микроконтроллера не подключаться. Помню в свое время в институте курсовой делал, там задача подобная была, от компьютера управляющего до станка метров 15-20. На тестировании все замечательно. Потом спустя пару дней пошли какие-то глюки, станок начал хаотично включаться-выключаться, на входе посмотрел — приходит не пойми что. Оказалось дело в наводках, на тестировании все окружающее оборудование выключено было, а на практике фонило ужасно. В итоге переделал все, примерно на такую схему и все стабильно работало еще года с два, до самой замены станка на новый с блэкджэком современный и с пультами беспроводными.
                    0
                    спасибо за совет. применю
                      +2
                      так у автора же используется витая пара, проводники заплетены «косами», что сильно усложняет наведение тока помехами. На расстояниях 10-20-30 метров — лишние сложности, неоткуда там взяться току, который повредит вводы Arduino.

                      А вот мелкие помехи — это чуть неприятнее. Я бы посоветовал автору не гнать просто циферки в COM-порт, а «оборачивать» в простейшую проверку контрольной суммы. Или хотя бы не слать 1 байт на оценку, а слать десять: не «2», а «2222222222». Лучше не засчитать оценку вовсе, чем засчитать не ту.

                        +1
                        Дык от «пульта» вообще ничего не идет окромя «нажатия кнопки», а от ардуинки до компа — короткий юсб-кабель.

                        Собственно, если бы кабель от ардуины до компа был бы длинный — тогда да, можно заморачиваться с проверками и т.п. В данном случае — это не нужно.
                  +1
                  Таки я бы предложил CAN. Просто, дешево, надежно, примеров кода навалом. Если паять все самому то стоимость выйдет дешевле той же одурины. И главный плюс — куча устройств сидит на одной 4х проводной шине H,L,+,- (питание по кабелю) тот же UTP можно на километр кинуть будет.
                    0
                    Проще наверное LIN шину тогда использовать, дешево и сердито, достаточно МК с UART'ом и драйвер LIN шины, не нужны навороченные процы с CAN контроллером. Ну и связь всего по одному проводу, хотя конечно если задача действительно на километр кинуть, то не подойдет =)
                      0
                      У LIN есть недостаток — все коллизии и очередность придется разруливать программно. А CAN — прикручивается mcp2515 к atmega8, кварц на 8МГц общий, драйвер типа MAX3051 итп, несколько резисторов и все. Ничего навороченного, кидаешь несколько байт в контроллер по SPI, он сам решает кто на шине главный, приоритеты сообщений можно задавать. Удобно до чертиков.
                      0
                      Еще один вариант — 1-Wire от Dallas/Maxim. В кнопках, соответственно, по копеечному ID-чипу.
                        0
                        1-Wire не соответствует условиям задачи. Дело не в уникальности ID кнопок. А в том какая и в какое время нажата. Кнопки должны быть активными устройствами на шине или необходимо их опрашивать. К тому же 1w не обеспечивает такие расстояния(штатно по паспорту не обеспечивает)
                        Не пугайтесь вы все CAN шины, это реально простая и удобная весч. Я тоже лет несколько назад искал обходные пути и решения на паре транзисторов, потом пришло просветление. Сделайте над собой усилие и разберитесь сейчас, потом 10 раз себе спасибо скажете.
                          0
                          Всегда надо делать устройства с небольшим заделом на будущее, заказчик обратится за апгрейдом, например, (а на эту же шину можно посадить большой экран подсчета очков на потолке), а может Вы эту разработку в других целях используете… Это способ LevelUP :)
                            0
                            Вот кусочек платы нашего проекта — CAN контроллер(многоногий), CAN трансивер(8 ног), Mega8, кварц, и несколько деталек, ну что проще еще ?
                            0
                            Радиус сети в 200 метров при простейшей реализации и 500 при более сложной — не соответствует условиям задачи?
                            И да, они опрашиваются, ровно также, как кнопки на замыкание.
                              0
                              То есть существует некая вероятность, что судья нажал и быстро отпустил кнопку в самый неподходящий момент. До или после опроса… Или отпустил во время. Процесс то не мгновенный передачи. Не важна величина вероятности — она есть. Кнопки всяко надежнее, хотя и не на 100%
                                0
                                Радиус сети в 200 метров при простейшей реализации

                                Драйверы с активной подтяжкой и специальный кабель — простейшая реализация? Простейшая (мастер на контроллере без доп. обвяза + слейв) уже на 7-8-метровом кабеле неплохо так звенит, что пришлось упорно подбирать подтяжки. Могу осциллограммы снять.

                                Тут уж действительно CAN предпочтительней.
                          +1
                          Я не силён в судействе и у меня возник вопрос, а почему раньше не использовалось ничего подобного? Все побаиваются ошибок со стороны вычислительной техники? Ведь практическая польза на лицо…
                          Данный вариант собран конечно же на коленках и за ночь отсюда и топорный внешний вид, но думаю за ближайшее время будет оптимизировано ПО, подобраны иные кнопки… =) и на мой взгляд этой системе есть место для жизни.

                          В общем, автор крут!
                            0
                            Оборудование есть, для видов спорта входящих в олимпийские игры свой регламент и свое требование для оборудования (сертификация, и прочее ) на пример для тхеквандо.

                            для боксов и кикбоксингов коими я занимаюсь тоже есть оборудование но стоит от 15 000 за ПО и то тоже коленное (были как то на соревнованиях) и дырявое использовались мышки с USB удлинителем(коменнтировать дальше не буду ибо не коректно).
                            бюджет данной сборки вряд ли перевалил 3000 руб

                            ну а про качество. вы правы коленки не очень хорошо но отработало
                            а как говориться важен лишь результат.
                              +1
                              Спасибо за развернутый ответ, вот именно тот факт, что Вы боритесь с конкуренцией с финансовой точки зрения мне кажется стоит выделить небольшим пунктиком в начале статьи, а то я по незнанию подумал, что подобные решения не практикуются и это породило довольно глупый комментарий с моей стороны =)
                              На самом деле, главное чтобы свет не вырубился в помещении, ноутбук конечно продержится часик-другой, но в итоге придётся снова бегать с листочками, а значит постоянного Вам электричества!
                                +1
                                А еще землятресения бывают, как обеспечить 24х365,25 на следующие 5 минут? :-)
                                  0
                                  Ну я думаю автор согласится с тем, что землетрясения у нас в стране бывают несколько реже, чем отключения света =)
                                    0
                                    ну да согласен конечно, но хорошо заряженный бук + гонг + светлое время суток и соревнования не остановятся ближайшие 2-3 часа точно
                                    0
                                    Ага. Тут землетрясение, а мы продолжаем соревнования :)
                                      0
                                      да да да )))) потоп )))
                                    0
                                    Я думаю, что если в помещении выключится свет, то при свечах вряд ли будут проводить соревнование…
                                    А даже если и так, то питание самой платки ведь идет от ноутбука? Значит надо подобрать какой-нибудь ноут с мощной батареей и на каком-нибудь atom'е — 5-8 часов автономной работы всей системы гарантированы.
                                0
                                > Во первых сразу же делюсь кодом
                                Могли бы вы выложить в github? Так проще скачать/просматривать код чем из google docs.
                                  0
                                  ээммм щас попробую
                                    0
                                    опубликовал
                                    +7
                                    Под катом ожидал увидеть кнопки из первой картики, сигнализирующие светодиодами об ожидании и подтверждении ввода. Обратная связь всё-таки важна.
                                      +2
                                      Тут есть момент, может нужна хоть муляж обратной связи, для боковых судей. Чтобы было понимание что кнопка сработала именно так как нужно.
                                        +1
                                        По кнопкам.
                                        специально выбрал такие кнопки по следующим причинам:
                                        1. обратная связь тактильная. щелчек при нажатии
                                        2. кнопки не имеют свободного хода
                                        3. у кнопок со свободным ходом есть не приятность они срабатывают раньше чем чувствуется щельчек
                                        4. пользователи системы люди с мышцами, а не любители няшных кнопок
                                        5. обратная связь светодиодом бесполезна ибо взор судьи направлен на ринг, а не на руки
                                          0
                                          5. звуком можно, пип — синий, пип-пип — красный. Хотя тут момент, нужно чтобы это слышал только судья
                                            0
                                            Наушник?
                                            0
                                            По всем пунктам согласен. Хотя готовность к работе всё-равно бы обозначил.
                                            С другой стороны, может быть более практичная функция — на контроллере мониторить подключение пультов (online/offline).
                                            –1
                                            Простите, но не проще было еще три дешевых нетбука купить или даже самых дешевых планшетов по три тысячи? Немного дороже конечно, но возможностей по доработке, общению, обсуждению, организации обратной связи в разы больше, не?
                                              +3
                                              Как я понял, тачскрин планшета внесет ряд проблем: судья должен все время смотреть на ринг и ощущать все время две кнопки под пальцами и ощущать, как они «щелкают».
                                                +4
                                                а так было похоже будь то судьи в мортал комбат играют )))
                                                  +1
                                                  Кстати, да — а ведь судья может увлечься и, например, регистрируя удар, автоматически начать лихорадочно давить кнопку «удар» на «добивание» :)
                                              +3
                                              А почему не использовали кнопки с большим ходом, как на кдпв?
                                              У ваших кнопок ход около миллиметра, нежелательные/случайные срабатывания не беспокоят?
                                                +1
                                                эти кнопки имеют достаточное сопротивление по силе нажатия то есть на них могут спокойно лежать пальцы не боясь случайных нажатий.
                                                щелчек чувствуется. следовательно все ок. ну если рынок попросит нечто подобное в малую серию и у меня будет время конечно сделаю подборочку компанентов по симпатичнее
                                                  +2
                                                  нежелательные/случайные срабатывания не беспокоят?
                                                  У настоящих борцов руки не трясутся.
                                                    0
                                                    с мышками на соревнованиях 2 года назад были одни проблемы
                                                    после этих кнопок все судьи про коментировали отлично все тактильные ощущения
                                                    меня это устроило
                                                  +4
                                                  Мотивация на решение задачи порадовала. Вот кого надо в менеджеры брать.
                                                    0
                                                    я еле сдерживался от соркастических комментариев учитывая серьезность ресурса )))
                                                    0
                                                    Работа героическая, отмечу две детали(исходники не рассмотрел).

                                                    1. Нужна синхронизация по времени видиозаписи боя с оценками судей (возможны ошибочные нажатия или не нажатия).

                                                    2. Бойцам необходимо соразмерное время на отдых — они ведь не электрические.
                                                      +2
                                                      1. главный судья когда увидел как судят боковые судья он был в шоке видно кто подсуживает кто спит. ну и волшебный хук так сказать решал проблему качества
                                                      2. на все есть регламенты и правила я лишь их реализовал
                                                      0
                                                      Написано за ночь и понятнее чем интерфейс Android )
                                                        0
                                                        ага и логика iOS )))
                                                        +1
                                                        Кнопки советую советские КМ-ки. Самое лучшее, когда не нужна миллисекундная реакция, а нажатие должно чувствоваться.
                                                          0
                                                          В моём самодельном руле кнопки действий — КМки — показали себя с самой лучшей стороны. А вот на клаксон пошла какая-то из «новомодных» и с ней я намучился.
                                                            0
                                                            у нас выбор под рукой не очень хороший был, выбирал в магазине с цешкой на ощуп так сказать
                                                            но вашу поправку учту
                                                          –18
                                                          И ведь не постеснялись такое выкладывать на всеобщее обозрение.
                                                          Коробочки, обмотанные изолентой… Полная жесть.

                                                          Не фиг пенять на власть и страну, коль у самих руки из ж… растут.

                                                          P.S. А еще вот это порадовало:
                                                          >> Я не стал использовать сдвиговый регистр так как не умею с ним работать
                                                            +8
                                                            а в чем может быть стеснение уважаемый?
                                                            успешно решенная задача? или полученный положительный результат?

                                                            вы едите всегда в ресторанах или пельмени дома варите?

                                                            я вот например люблю домашние, пусть не такие красивые как в магазине зато свои, так сказать родные и знаю из чего состоят какими функциями обладают)))

                                                            у вас в 90-х ВАЗ 2108 не было случаем? тюнинг авто синей изолентой не делали?
                                                              –8
                                                              Стеснение в том, что исполнение — на уровне строителей-таджиков, над которыми так любят смеяться в нашей стране.
                                                              И дело не в том, что так коряво сделано, а в том, что это выложено на всеобщее обозрение. Мне бы было просто стыдно такое показывать.

                                                              А если говорить про положительный результат… Ну так ВАЗ 2108, который вы упомянули, тоже основную задачу — перевозку из А в Б — успешно решает. Только почему-то никто его на выставки автомобилей не выставляет.

                                                              Тюнинг изолентой не делал, тут вы с сарказмом своим промахнулись.
                                                                +5
                                                                Судя по вашим постам, вы ничего и не делаете, что можно выставить на всеобщее «оборзение».
                                                                Про выставки вы не правы — тут есть пруфпик.

                                                                По сути — хороший концепт, которому есть применение. Желаю автору начать коммерческое производство этой системы.
                                                                  –16
                                                                  Лучше не выкладывать ничего, чем выкладывать такое. Очень жаль, что на хабре процветает дилетантство.

                                                                  А ссылка на выставку 84 года, да еще и проходившую на родине ВАЗа — сильно :)
                                                                    +6
                                                                    Это достаточно хороший пример того, что можно сделать на коленке. Лично мне приятно видеть такое. Судя по рейтингу, не мне одному.

                                                                    По крайней мере, это выставка, а не что-то другое.
                                                                      –4
                                                                      Я ж и говорю — тут процветает дилетантство. Ну не может ТАКОЕ нравится — криво отпиленные платы, кое-как подпаянные провода, ну и в довершение, конечно, изолента и кнопки без всякого оформления.
                                                                      Мне вот почему-то кажется, что между жигулями и мерседесом вы выберете не жигули :)

                                                                      Да и давайте признаем, что с точки зрения сложности разработки именно ПО проект тоже не блещет сложностью и изяществом — обычная простенькая задача.
                                                                        0
                                                                        Рейтинг статьи говорит об обратном, увы.
                                                                        Абсолютно согласен с комментатором ниже.

                                                                        Нет, не жигули, я велосипед выберу.
                                                                        И давайте прекратим этот бессмысленный флуд. Все равно каждый останется при своем мнении.
                                                                        *хабрасуицид детектед*
                                                                          0
                                                                          Ну правильно, надо было на заводе лазерную резку/покраску корпусов заказать. Искуственный интелект гденибудь прикрутить в каждую кнопку по мини-компьютеру вопхать не ниже «Пая», только вот это сосем других денег стоит, больше времени занимает, и не нужно в данном случае, собственно данный топик наглядно и показывает что усилия должны быть соответствующими здаче, если делать все «красиво» (а предела совершенству как мы знаем нет) можно в итоге вобще ничего не сделать.

                                                                          ИМХО: Пусть уж лучше на каждый чих сттьи будут нежели все будут боятся выложить неидеальное решение, в крайнем случае закрою вкладку в браузере, но зато при решении аналогичной задаче надо будет всего лишь в поиске искомую задачу описать.
                                                                            –1
                                                                            Нет, не нужно подобного выпендрежа. Достаточно просто сделать все _аккуратно_, а не тяп-ляп.

                                                                            Вы же не рискнули бы выкладывать свой код, если бы он был, по вашему мнению, говнокодом? :)
                                                                              0
                                                                              Почему нет если он решает задачу на должном уровне и его публикация не создаст проблем для системы с этим кодом работающей. Я сторонник того что всякая информация важна, только механизм фильтрации ее надо придумать какой нибудь.

                                                                              Ну а вобще как сказали выше мы офтопим по полной, если хотите продолжить дискуссию плз в личку ;)
                                                                        +3
                                                                        Я могу сделать очень много чего.
                                                                        но такое — не умею. совсем. а тема судейства мордобоя мне интересна с обеиих сторон, как изнутри ринга, так и из-за канатов.
                                                                        Потому прочитал с интересом.

                                                                        Вы можете сделать лучше? Выкладывайте, внимание публики обеспечено, результат в +80 для праздничного поста — отличный.
                                                                        Не можете? К чему тогда все разговоры и псевдокритика?

                                                                        И не согласен с тем, что это дилетантство. На мой взгляд — это разумное расходование ресурсов.
                                                                        когда пойдет в серию — тогда и будут полированные корпуса китайцам заказывать. а тут тяп-ляп — и дело в шляпе.
                                                                        И вообще — посмотрите внимательно на любые серьезные творения человееских рук — Вы удивитесь, насколько там все топорно, неприглядно, неизменяемо и часто немонтопригодно. Строительство, механические конструкции (особенно промышленные), те же автомобили. Подойдите ближе к самолету. особенно — военному.
                                                                        Серьезный ремонт абсолютно любого люкс-кара немыслим без кувалды. Как бы оно снаружи ни блестело.
                                                                • НЛО прилетело и опубликовало эту надпись здесь
                                                                    0
                                                                    согласен, можно было и на ЧПУ корпуса вырезать и платы протравить, но если все довольны,
                                                                    сегодня на соревнованиях в таком же исполнении 2 пульта заказали и оплатили, хотя я им предлагал статью почитать и отсюда все взять.
                                                                    предлагал дороже и дорогих компонентов сказали что не нужно. спрос определяет предложения

                                                                    будут просить со стразами от сваровски сделаем не будут не сделаем.

                                                                    стал лишь один не приятен факт, мне делать некогда, может кому на аутерс отдать?
                                                                      –1
                                                                      Я смотрю указание на кривые ручонки многих тут зацепило :)

                                                                      Да я уже понял, что абсолютное большинство хабравчан активно использует принцип «тяп ляп». Могли и не писать этот комментарий.
                                                                        +2
                                                                        Речь не о том, молодец ли автор в целом или не молодец.

                                                                        Речь о том, что абсолютное большинство людей в нашей стране любят причитать, например, о том, что наши машины — гавно, а вот иномарки — совсем другое дело. Какие же молодцы европейцы, делают на совесть. Не то, что наши криворукие!
                                                                        Ребята, вы, прежде чем критиковать отечественную продукцию, начали бы с себя, а? Или вам лично можно делать тяп-ляп, а всем остальным — нет?

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

                                                                        Другой пример. Многие любят ругать индусов за говнокод. Но, если следовать вашей логике, в чем проблема-то? Код работает? Работает. Свою задачу выполняет? Выполняет.
                                                                        Двойного стандарта не наблюдаете? Или код нужно писать красивый, а делать что-то руками — уже как придется?

                                                                        Вы пишете, что я неадекватен, потому что продукт автора работает, а я просто докопался до его ужасного внешнего вида. Окей, пусть так. Представим, что у вас будет достаточно денег и вы будете стоять перед выбором автомобиля. Что вы выберете — Калину или Мерседес? Ведь оба выполняют свою задачу, ведь оба ездят? Ну выглядит Калина хуже, ну менее удобная она, но ведь по вашей точке зрения это мелочь? :)

                                                                        У человека должно быть встроенное стремление к лучшему. Должна быть требовательность к результатам своего труда. Мораль всех моих комментариев — лишь в том, что у большинства местных жителей этого нет. И то, как минусуют мои комменты, является лишним подтверждением ентого :) Впрочем, несколько комментаторов ниже думают так же, как и я. Ну хоть кто-то!)))

                                                                        Хотите изменить жизнь в нашей стране? Начните с себя.
                                                                        Лень начинать с себя? Ну тогда и не нойте про нашу ужасную власть. Вы ничем не лучше ее.
                                                                          0







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

                                                                            0
                                                                            По фоткам сложно сказать, ибо особо и смотреть-то здесь нечего — щиток, два удлинителя, лампа и обогреватель. Прикручено, по крайней мере, на стяжках :)

                                                                            Речь была о том, что даже «на коленке» можно делать аккуратно.
                                                                            0
                                                                            Вы ведь понимаете разницу между рабочим прототипом и образцом производства?
                                                                            • НЛО прилетело и опубликовало эту надпись здесь
                                                                                0
                                                                                Калина шумит, потому что у проектировщиков не было требовательности к результатам своего труда. А, мол, кое-как работает — и ладно!
                                                                                Ломается, потому что у рабочих аналогичное отношение. Надо сделать по технологии? Да нафиг надо, и так сойдет! Ездить-то будет!
                                                                        • НЛО прилетело и опубликовало эту надпись здесь
                                                                            –3
                                                                            Еще одно подтверждение, что нельзя подпускать программистов к паяльнику.
                                                                            Нельзя.
                                                                              +11
                                                                              самое страшное что я даже и не программист
                                                                              –3
                                                                              Такая крутая вещь, и коробочки с изолентой. Эх.
                                                                                +1
                                                                                Ну вот. А мы стараемся, продаем такие судейские системы за большие деньги. Разработка многолетняя у нас. А тут раз — и 3000 рублей рабочая система :-) Вот тебе и рынок.
                                                                                  +1
                                                                                  3000 руб в раскрытой себестоимости и со всеми исходниками это не рынок

                                                                                  рынок был бы если бы я объявил, что за сборку возьму 3000 руб + ваши материалы ))
                                                                                    0
                                                                                    Ну факт такой дешевизны системы остался. Мы вот сейчас предложим этому спорткомплексу свою систему и они скажут «зачем нам платить полмульена, если тут за 3000 чувак сделал» :) Я не хочу вас обидеть или поругать. Наоборот, мне нравится что люди делают такое сейчас. Прогресс всё-таки на лицо. То что раньше делала фирма с небольшим штатом теперь сможет сделать 1 человек на коленке.
                                                                                      +1
                                                                                      сорри что ответил вне ветки дискуссии
                                                                                        0
                                                                                        В серийном производстве на голом МК (а не на Arduino) будет стоить существенно дешевле… разводка плат — для знающего спеца 1-2 дня (к вопросу о времени разработки)
                                                                                          0
                                                                                          то что в серии выпустить дешевле это и яжу понятно например либо вытравить или в том же пс электро, ток не стояло такой задачи
                                                                                          я сделал прототип проверил работает
                                                                                          я доволен
                                                                                          и еще щас проходят 2 дня соревнований по боксу, косячек выявил по кнопкам. у одной кнопки дребеск контактов более 5 мили секунд стал а так все хорошо
                                                                                            0
                                                                                            А вы программно дребезг не убирали, или 5 мс уже критично?
                                                                                              0
                                                                                              я гистерзис выставил на 10 мс и ок
                                                                                                0
                                                                                                на самом деле критично, за одно нажатие 2-3 раза нажималось, и чувствовалось что кнопка проскальзывает.
                                                                                                учитывая тот факт, что вряд ли судья нажмет кнопку чаще чем 4 раза в секунду, поэтому гистерзис по времени увеличил спокойно на этой кнопке

                                                                                                вечером перепаял, проверим что получиться
                                                                                                  +1
                                                                                                  Я имел ввиду программный способ (на МК обычно используют алгоритмическое, а не аппаратное подавление дребезга), когда кнопка блокируется на заданный интервал времени после первого нажатия. Интервал блокировки стоит выбирать таким большим, чтобы дребезг гарантированно прекратился, и меньшим максимально допустимого времени «нечувствительности к нажатию». Исходя из
                                                                                                  вряд ли судья нажмет кнопку чаще чем 4 раза в секунду
                                                                                                  целесообразно выбрать время <250 мс. Обычно ставят 150..200 мс для обычной кнопки типа пуск/стоп. Главное не забыть проверить кнопку на «отжатие» перед повторным считыванием (если вы детектируете именно по уровню, а не по перепаду), а то система начнет срабатывать каждые 150..200 мс, если кнопка зажата…
                                                                                                    0
                                                                                                    а статье я указал что я использовал все из примеров, в примере данный интервал установлен на 5 мс данная вами информация подтвердила что можно поставить больше чем я сделал и это хорошо за что и спасибо.

                                                                                                    так вот теперь у меня другой головняк. не взирая накидали мне заказов на эту систему хочу подбирать кнопки. какие порекомендуете?..
                                                                                                      0
                                                                                                      Я бы выбирал, так-же как и вы, по ощущениям, только не тактовые кнопки а что-то более массивное (что-бы не «раздолбались» за первую неделю постоянной эксплуатации). Можете попробовать спросить у DIHALT, он имеет довольно солидный опыт. Вот его сайт, кстати, там много примеров.
                                                                                                      в статье я указал что я использовал все из примеров
                                                                                                      по вашей фразе
                                                                                                      вечером перепаял

                                                                                                      я решил что вы использовали аппаратные фильтры. I am sorry.
                                                                                                      накидали мне заказов на эту систему
                                                                                                      я бы, на вашем месте, привлек к разработке спеца, имеющего опыт (и не малый) подобного рода разработок.
                                                                                                      В свете новых заказов стоит отказаться от Arduino, по-моему…
                                                                                      0
                                                                                      Конкуренция никогда еще не вредила. :-)
                                                                                      +2
                                                                                      из опыта бизнеса скажу следующее, то что я сделал на коленке это факт, то что я выложил исходные коды тоже факт, то что человек может купить собрать настроить и разобраться в сделанном то же факт, но не каждый.

                                                                                      Вы продавая свои пульты за пол мульта продаете еще и сервис и гарантию с подменным фондом.

                                                                                      я вот вам на пример могу показать: у меня есть автомобиль, есть гараж с ямой. но каждые 5000 км я меняю масло в автосервисе, хотя могу сделать и сам.
                                                                                        +1
                                                                                        ИМХО, использование Arduino только для считывания/передачи состояния кнопок — это немного «из пушки по воробьям». Логичнее бы смотрелась схема с переносом задач просчёта индикации на сам Arduino, либо использование гораздо более простого и дешёвого микроконтроллера для передачи данных о кнопках в ноутбук. Я когда-то давно для подобных целей (состояние дип-переключателей + пресеты) использовал моторолловский микроконтроллер MC68HC908JB8, устройство получилось размером чуть больше USB-флешки.
                                                                                          +2
                                                                                          Во времена LPT портов такие штуки было удобно делать без контроллеров. 100 метров расстояния наверное не получилось бы, но 20 — вполне.
                                                                                            0
                                                                                            Так у китайцев есть переходники на все случаи жизни. imageСтоит $10-12. LPT не проверял, а COM той же фирмы — исправно работает. Вот только по длине не уверен. Т.к. «во времена LPT» сканер не заработал на 10-ти метрах экранированного кабеля.
                                                                                            +1
                                                                                            Реализация получилась «колхозная», но практичная — бюджет строго соответствует уровню задачи.

                                                                                            Автору: конечно, кикбоксеры люди суровые, но можно было бы малыми силами сделать заметно приличнее. Для «пультов» судьям я бы брал коробочки для настенного монтажа, в которые втыкаются патч-корды. Ну, например:

                                                                                            image

                                                                                            Крепкая, некрупная, удобная форма, цена — тридцать рублей. Коннектор для Ethernet-кабеля уже присутствует. Пластик хорошо красится — в два приёма можно покрасить синей и красной краской из баллончика. За такую цену можно и парочку запасных «пультов» заготовить.

                                                                                            Далее, кнопки. Про тактильную обратную связь вы правильно написали, но всё же нужны кнопки с крышками. Ладони потеют, а от пота контакты могут внезапно накрыться.

                                                                                            И последнее — довольно важно подобную «мелочёвку» утяжелять — чтобы не слетала со стола, чтобы лучше лежала в руке, чтобы вызывала более «уважительное» впечатление у пользователя. У вас внутри «пульта» остаётся много места, так положите туда, например, десяток гвоздей или монеток и зафиксируйте их монтажной пеной или эпоксидкой. Мелочь, а восприятие меняет.
                                                                                              0
                                                                                              Частично с вами согласен, но:
                                                                                              корпус предложенный вами хорош, тоже на него смотрел, но выбор пал именно на те коробочки которые брал по следующим причинам:
                                                                                              1. горизонтальный размер
                                                                                              тактильно они даже маловаты в горизонтальной ориентации, цена в 45 руб более удовлетворительна чем коробочка в 2 раза шире и по цене 145 руб в местном магазине
                                                                                              2. да решение тяп ляп на изоленте держиться и я этого не скрываю и внутри пусто, но «проведенное выступление» дало много фитбеков гараздо больше чем я мог ожидать и 99 % все ок. главный критерий ОК, прошу прощение за повторение, это то что отработало без сбоев, и сократило уйму времени.
                                                                                              3. реальная проблема даже не в коробочке, кнопки нажимаются все работает цифорки бегут. проблемой как оказалось перегруженный интерфейс программы. Да он информативен, да всем есть все, что нужно, да он позволил оценивать качество судейства, да все хорошо, но спустя 2 часа соревнований в глазах уже рябило от набора цифр

                                                                                              сейчас занимаюсь переработкой интерфейса и добовляю дополнительные функции если Хабраюзерам будет интересно после проведения соревнований по боксу выложу подробный отчет и подробным разбором программы и методом учета и прочими вещами касательно поединков по боксу. соревнования будут 7-8 мая.
                                                                                                0
                                                                                                но всё же нужны кнопки с крышками.
                                                                                                А ещё лучше — один трёх-позиционный переключатель. И дешевле, и «защита от дурака», аппаратная.
                                                                                                  0
                                                                                                  По моему мнению — не лучше. 3-позиционные переключатели очень легко неловким движением руки сдвигаются в какую-то сторону.
                                                                                                    0
                                                                                                    Скажем, кнопочки тоже легко нажимаются неловким движение руки. А так хотя бы будет защита от одновременного нажатия. А вообще может мы говорим о разных типах, не очень понятно куда на клавише сдвигаться?
                                                                                                    image
                                                                                                      0
                                                                                                      Да, как оказалось, мы говорим о разных типах. Я подразумевал под переключателем рычажок.

                                                                                                      image
                                                                                                        0
                                                                                                        А, такой да. Есть много вариантов рычажков с брутальными колпачками, или колпачки отдельно.image
                                                                                                        А ещё можно использовать поворотный, или даже с ключом (как замок зажигания в авто) — но они по-дороже будут.
                                                                                                0
                                                                                                Оказывается, спортсмены-кикбоксёры имеют что-то общее с ботаниками-чгкшниками :-)

                                                                                                В сообществе знатоков похожие системы уже много лет используются, чтобы играть в брейн-ринг и в «Свою игру».
                                                                                                  0
                                                                                                  И не только кикбоксёры. Спасибо автору, давно искал такую же штуку.

                                                                                                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                                                Самое читаемое