Есть такая игра Lasertag.

На этом форуме Вы можете задать вопросы знатокам программы и автору.
Ответить
Iron
Рядовой
Сообщения: 26
Зарегистрирован: 23.11.2016{, 17:20}
Репутация: 1

Есть такая игра Lasertag.

#1

Сообщение Iron » 09.11.2017{, 21:10}

Есть такая игра Lasertag.Суть игры заключается в том что оружие с помощью узкого IRпучка передает информацию о повреждении на IR датчики противников. Более
подробно можно почерпнуть в сети. Основное его достоинства в том что в него
дети любят играть больше чем на своих телефонах и планшетах.Есть несколько открытых проектов. Из них самый на мой взглядэффективно развивающийся проект или точней уже четвертый, энтузиаста с ником
Пингвин, выложен на гитхабе https://github.com/PingvinOpenTag.Первые проекты он создавал на Атмегах первые на 16, потом на32 а вот последний
http://forum.easyelectronics.ru/viewtop....c11ddНо вот вопрос как можно создавать различные Lasertag устройства(Оружие, аптечки, точки захвата) на FLprog.Я уперся на первом же этапе, когда пытался с помощью встроенногоблока IR Ressiver получить код от действующего LT оружия. Протокол используемый
в Lasertag называется MilesTag II Data Protocol. Как утверждают специалисты он идентичен
SONY. Посмотрел сигнал на анализаторе и выяснил что в отличии от общедоступногоон отличается лишним байтом.Спасибо DezmontDeXa http://arduino.ru/forum/programmirovani ... milestag2в 10 посте открыл истину. Последний байт оказалсяконтрольной сумой первых двух.И еще понял вероятную причину явного нежелания правильногосчитывания. Из имеющихся у меня двух Ir датчиков похожих на TSOP , на одном
A056? на втором 52Е4, немного отличаются длительностью импульсаНа первом: заголовок 2,55 мс/ пауза 0,49/ "0"=0.754/ "1"=1.822На втором: заголовок 2,49 /пауза 0.54 /"0" =0.59/1.823Я баран в Си но буковки читать умею. И вот такая строчка в кодеПингвина (файл \release_3_1(SMD,fix_flesh_led_bag,firmware_up_to_56000Hz_IR_F0)\firmware\LTAscet_3_1_Atmega32\source\LTAscet_blue_stop_isr_up_to_56000HZ_IR_F0\ miles_protocol.h) #define ERROR_TOLERANCE 22//(Если F0=56000)Допустимая погрешность длительностипринимаемых бит (в "тиках" таймера)//#defineERROR_TOLERANCE 14 //(Если F0=36000)  меня навела на мысль, что пора просить сведущихлюдей написать блок пользователя, заточенного под прием протокола MilesTag 2. Надеюсьзаинтересовать пап и дедушек реализацией этого проекта для чад, и чадам тоже
может будет интересно J Полезные ссылки http://www.open-tager.ru/masterskayahttp://www.lasertagparts.com/forum/http://cxem.net/arduino/arduino33.phphttps://anthonynet.org/page/2/http://ltagkirov.narod.ru/index/istorij ... ersija/0-5http://www.lasertagparts.com/mtformat-2.htm  С уважением.

Добавлено (09.11.2017, 18:00)
---------------------------------------------
Торопился не посмотрел после переноса текст     Решил подправить.

 Есть такая игра Lasertag.Суть игры заключается в том что оружие с помощью узкого IRпучка передает информацию о повреждении на IR датчики противников. Более подробно можно почерпнуть в сети.
    Основное его достоинства в том что в негодети любят играть больше чем на своих телефонах и планшетах.
Есть несколько открытых проектов. Из них самый на мой взгляд эффективно развивающийся проект или точней уже четвертый, энтузиаста с ником
Пингвин, выложен на гитхабе https://github.com/PingvinOpenTag.
    Первые проекты он создавал на Атмегах первые на 16, потом на 32 а вот последний и вовсе на базе микроконтроллера STM32F103RET6. 
http://forum.easyelectronics.ru/viewtop....c11dd

    Но вот вопрос как можно создавать различные Lasertag устройства(Оружие, аптечки, точки захвата) на FLprog.
Я уперся на первом же этапе, когда пытался с помощью встроенного блока IR Ressiver получить код от действующего LT оружия.
Протокол используемый в Lasertag называется MilesTag II Data Protocol. Как утверждают специалисты он идентичен SONY.
     Посмотрел сигнал на анализаторе и выяснил что в отличии от общедоступного он отличается лишним байтом. Спасибо DezmontDeXa, http://arduino.ru/forum/programmirovani ... -milestag2  -  В 10 посте открыл истину. Последний байт оказался контрольной сумой первых двух.
    И еще понял вероятную причину явного нежелания правильного считывания. Из имеющихся у меня двух Ir датчиков похожих на TSOP , на одном
A056 на втором 52Е4, немного отличаются длительностью импульса .
        На первом: заголовок 2,55 мс/ пауза 0,49/ "0"=0.754/ "1"=1.822
        На втором: заголовок 2,49 /пауза 0.54 /"0" =0.59/1.823
    Я баран в Си но буковки читать умею. И вот такая строчка в коде Пингвина (файл\release_3_1(SMD,fix_flesh_led_bag,firmware_up_to_56000Hz_IR_F0)\firmware\LTAscet_3_1_Atmega32\source\LTAscet_blue_stop_isr_up_to_56000HZ_IR_F0\ miles_protocol.h)
    #define ERROR_TOLERANCE 22//(Если F0=56000) Допустимая погрешность длительности принимаемых бит (в "тиках" таймера)/
    /#defineERROR_TOLERANCE 14 //(Если F0=36000)  
меня навела на мысль, что пора просить сведущих людей написать блок пользователя, заточенного под прием протокола MilesTag 2.
    Надеюсь заинтересовать пап и дедушек реализацией этого проекта для чад, и чадам тоже может будет интересно   
   
    Полезные ссылки
http://www.open-tager.ru/masterskaya
http://www.lasertagparts.com/forum/
http://cxem.net/arduino/arduino33.php
https://anthonynet.org/page/2/
http://ltagkirov.narod.ru/index/istorij ... ersija/0-5
http://www.lasertagparts.com/mtformat-2.htm

 С уважением.

Добавлено (09.11.2017, 19:52)
---------------------------------------------
Буду продолжать похоже для себя   

    Так вот. Если встроенный блок IR Ressiver видит не пойми что, точнее не может определить разрядность, то "Запись кнопок ИК пульта" в инструментах справляется почти на ура.
    Прочитал коды оружия, еще слепил по быстрому http://forum.ekits.ru/viewtopic.php?f=8&t=1286 и здесь  без вопросов.
    Конечно если не придется менять Id оружия(7bit), цвет команды (2bit) и т.д. то можно просто какое то количество вариантов записать через  "Запись кнопок ИК пульта", но как по мне это не комильфо. 
Пока буду подождать помощи, может чего и дождусь  

 С уважением.

Добавлено (09.11.2017, 21:10)
---------------------------------------------
"И все таки она вертится"
Убрал из проекта все кроме  блока IR Ressiver и индикатора и проблема исчезла. Буду разбираться дальше.
 С уважением.

Аватара пользователя
Anydy
Администратор
Сообщения: 3272
Зарегистрирован: 30.12.2017{, 12:10}
Репутация: 278
Имя: Андрей

Есть такая игра Lasertag.

#2

Сообщение Anydy » 09.11.2017{, 22:16}

Для детей сделать что их заинтересует кроме смартфонов - это конечно хорошо! Но мы даже всем сообществом не сможем сделать лучше гигантов игровой индустрии...
Современным детям нужна интерактивность и красота графики..

Здесь в основном из профессионалов электронщики и мало программистов...

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

Так что заинтересуйте детей программировать, паять и делать физические устройства типа роботов а не играть в игры!

PS. посмотрел, это типа паинтбола...но думаю на один раз поиграть и все... я лучше в живую поиграю чем какими то лазерами ...
Последний раз редактировалось Anydy 09.11.2017{, 22:27}, всего редактировалось 1 раз.

Iron
Рядовой
Сообщения: 26
Зарегистрирован: 23.11.2016{, 17:20}
Репутация: 1

Есть такая игра Lasertag.

#3

Сообщение Iron » 09.11.2017{, 22:51}

Anydy,
Для детей сделать что их заинтересует кроме смартфонов - это конечно хорошо! Но мы даже всем сообществом не сможем сделать лучше гигантов игровой индустрии..
Так и все или почти все что мы делаем и обсуждаем на форуме можно купить, или я не прав.

Современным детям нужна интерактивность и красота графики.
 Если у вас будет возможность, посетите сами игры , может измените свой взгляд. 
Так что заинтересуйте детей программировать, паять и делать физические устройства типа роботов а не играть в игры!
Хорошее предложение, но многим мальчишкам нравится играться в войнушку, и к паяльнику я впервые прикоснулся уже давно закончив школу. Думаю всему свое время.


я лучше в живую поиграю чем какими то лазерами ...
  
 А в живую это как?  

Я думаю что средств FLproga должно хватить. 

Проблема оказалось в том что  со встроенный блок IR Ressiver конфликтуют все пользовательские блоки под WS2812

Может сможете подсказать файл прикреплю.

С уважением.
Вложения
Lt3.flp
(452.82 КБ) 42 скачивания

Аватара пользователя
Anydy
Администратор
Сообщения: 3272
Зарегистрирован: 30.12.2017{, 12:10}
Репутация: 278
Имя: Андрей

Есть такая игра Lasertag.

#4

Сообщение Anydy » 09.11.2017{, 23:53}

Iron писал(а):А в живую это как?
В детстве мы просто играли в войнушку, так как были деревянные игрушки))) .... я имел ввиду в живую пострелять шариками (паинтбол)
Iron писал(а):Проблема оказалось в том что со встроенный блок IR Ressiver конфликтуют все пользовательские блоки под WS2812
В чем конфликт то? вы разобрались? лог ошибок бы хоть приложили...
В ФЛпрог много еще недоработок касающихся пользовательских блоков на С++ (Сергей и так старается бесплатно нам всем угодить, но он один)))) ...
В частности иногда просто ФЛпрог вставляет строки не туда куда надо и надо править в коде руками...
например #include перед #define ...а надо наоборот ...вот и не работает....

Добавлено (09.11.2017, 23:53)
---------------------------------------------
Ваш проект у меня нормально скомпилировался, без конфликтов..

Скетч использует 12510 байт (40%) памяти устройства. Всего доступно 30720 байт.
Глобальные переменные используют 531 байт (25%) динамической памяти, оставляя 1517 байт для локальных переменных. Максимум: 2048 байт.
Или я что то не понял про конфликты?

Iron
Рядовой
Сообщения: 26
Зарегистрирован: 23.11.2016{, 17:20}
Репутация: 1

Есть такая игра Lasertag.

#5

Сообщение Iron » 10.11.2017{, 09:46}

Anydy, Спасибо за внимание.
Блок компилируется, для контроля я подключил индикатор 16х2. Так вот пока в проекте нет модуля с WS2812 я вижу что выстрел декодируется нормально . Но как только подключается блок с WS2812 начинается чехарда в показаниях, сигнал определяется то как 32 битный то как 17 битный то как ему еще заблагорассудится.  Конечно в проекте не обязательно использовать WS2812 с этим можно  смирится и выводить на простые светодиоды.  Наверное так и произойдет, так как не имея источника сигнала вызвать ошибку не удастся. Так что буду думать над реализацией передатчика, а уж потом может и вернусь к WS2812.

PS Хотя я не проверял но вероятно что можно проблему проверить с помощью любого ИК пульта.
С уважением.

maksimtverdohlb
Рядовой
Сообщения: 5
Зарегистрирован: 19.03.2019{, 18:09}
Репутация: 0
Имя: Maksim

Есть такая игра Lasertag.

#6

Сообщение maksimtverdohlb » 24.03.2019{, 10:22}

Тоже интересует эта тема )))Что в результате получилось ?Хазяин темы отгукнитесь....

Ответить

Вернуться в «Спросить у знатоков»