Простой поисковый радио маячок.

Pavel_liev

Провел полевые(лесные) испытания. Для полного феншуя снял пару роликов, вот что из этого получилось:

Остановился на аналоговой схеме с тини13 v5, со спящим режимом не все гладко. На тиньке можно сказать все круто, кроме времени работы, в непрерывном режиме расход батареи просто адский. Не сильно радует “с-метр”, бывает сомневаешься, по пару раз переходишь на пол метра, пока определишься.
Короче начал работу над “цифрой”, нужно же все опробовать. :mellow:

Dobryi

Всем здоровья! При устройстве передачи GPS сигнала через модуль НС-12, возникла необходимость циклическая передача для экономии батареи и увеличения времени передачи.
На просторах интернета нашел интересную схему на Тини 13.

Циклический таймер mini-tini.
Таймер в течении установленных отрезков времени включает и выключает исполнительное устройство.

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

Собрал и попробовал, получилась весьма интересное устройство.
Проверял выходы тестером.
Осталось дополнить ключ на транзисторе и подключить модули в единое устройство.

В файле: описание, схема, печатка, симуляция в протеусе, прошивка.

Циклический таймер.rar

Vladimir_N
Dobryi:

Всем здоровья! При устройстве передачи GPS сигнала через модуль НС-12, возникла необходимость циклическая передача для экономии батареи и увеличения времени передачи.
На просторах интернета нашел интересную схему на Тини 13.

Циклический таймер mini-tini…

В модуле HC-12 уже есть контроллер. Напишите свою прошивку для модуля и будет Вам режимы энергосбережения и многое другое. Родная прошивка далеко не полностью раскрывает возможности микросхемы SI4463 модуля HC-12. Теоретически можно получить гораздо большую дальность при меньших энергозатратах.

Dobryi

Ведь передача GPS сигнала по UART включает передатчик НС-12, а написать программу для модуля чтобы внутри себя отключал и включал вход для меня сложновато будет.

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

deeppurple

При изменении мощности передатчика (параметр 4) от 0 до 7 меняется мощность только первого тона, а мощность второго и третьего остается неизменной- так и должно быть?

Pavel_liev

Для маяка на тини13 это нормально, а по другим не знаю. Там есть косяк, при максимальной мощности “7”, без экрана, проводя рукой около антенны, тини13 зависает, от отраженного излучения. Актуальный стабильный максимум получается “6”, и это стоковое значение.

deeppurple

У меня тини 85, зависать не зависает, но померял ток при передачи, получились такие значения в мА для каждого из трех тонов при изменении параметра 4:
0 23 34 23
1 26 34 23
2 28 34 23
3 34 34 23
4 41 34 23
5 53 34 23
6 72 34 23
7 110 34 23

deeppurple

Ясно, а в чем смысл уменьшать мощность первого тона и оставлять неизменной двух других?

Vladimir_N

Основной ток будет у первого тона. Именно от изменения его мощности и будет зависеть время работы и радиус действия маяка. Второй тон имеет мощность 3 ниже его ставить нет смысла будет очень маленький радиус поиска. Да и при поиске как правило на средний тон внимания не обращают.
Третьи тон и так имеет минимальную мощность 0 уменьшать просто физически некуда.

Pavel_liev

Ребята, можно вопрос на засыпку? Кто тестировал цифровую версию маяка, насколько у него дальность хуже чем у аналоговой версии с радейкой? Начал делать первые замеры, и все достаточно плохо по дальности. Где радейка уверенно берет 1км, цифра едва пробивает на 500 метров.

Dobryi

Всем здравия и благополучия. Провел тесты и отказался от таймера для GPS маяка, оказалось что передача идёт не непрерывно, а с переодичностью секунду и аккумулятора в 1000ма хватает почти на 10 часов, при максимальной мощности. Среди жилой застройки уверенно 300м, на антенну резинку принимает сигнал, если поставить яги думаю будет больше расстояние. Тесты меня порадовали.

Pavel_liev

Vladimir_N извините за нескромность, но можете помочь по пробуждению маяка с радейки? Делаю “клон” вашего аналогового маяка, только попроще. С передачей освоился, читая доки к si4432 пришел к мысли что пробуждать можно двумя путями, либо с уровня “шума”, регистр 0х26, либо ловя тон рации как преамбулу.
Но неясно по конфигу детектора si4432, там все в байтах/секунду, и столько параметров что теряюсь.
Провел тест пробуждения по уровню шума, при точной настройке получилось средне. Сам уровень шума не идеален, и плавает, сделал минимальное превышение на 10 единиц его счетчика, получилось что радейка может ловить передатчик где-то за 2км, но разбудить его с “+10 единиц шума” можно максимум за 1.5км. Тогда как чтение тона как код, должно позволить работать дальше, короче не знаю куда копать в конфигах, всего много и глаза разбегаются. 😦

Vladimir_N

Идея правильная, нужно ловить тон рации как преамбулу. Настроить регистры поможет калькулятор для RFM22B.

Pavel_liev

Ранее скачивал калькулятор для si4432, вот такой:

Еще есть екселевский файл с мануала, но его параметры сильно разнятся от калькулятора, при том ни первое ни второе пока не помогло. Настроек достаточно много, был момент начал ловить пакеты, но потом перестал, и откат конфига ничего не дал, какой-то радио рандом.
Ваш маяк хороший, но хочется упростить схему, изменить конфиг и реализовать все на тини13. У нас тини45/85 в дефиците, стоят дороже, как и RFM22.

Vladimir_N

Выставите правильно скорость передачи “Data Rate” она должна быть кратна частоте вызывного тона рации и ловите преамбулу.

Pavel_liev

Ага, только все еще не работает. Мануал екселя по RF22B пишет не совсем то же самое что ексель Si4432, а на додачу к ним wireles develpment suite пишет третьи данные, и все три варианта не ловят преамбулу. Опрашиваю 0х03 и 0х04, в мануале 0х04/5-битая преамбула, 6-ровная, нет никакой 5=0, 6=0). Настройки что дали калькуляторы:

si4431:
RX GFSK/FSK Modem WDS COMMANDS
reg.1C	15
reg.1D	00
reg.20	98
reg.21	80
reg.22	1B
reg.23	DA
reg.24	00
reg.25	12
reg.2A	1D
reg.56	81
RF22B:
RX GFSK/FSK Modem WDS COMMANDS
reg.1C	1E
reg.1D	3C
reg.1E	02
reg.1F	00
reg.20	98
reg.21	80
reg.22	1B
reg.23	DA
reg.24	10
reg.25	04
reg.2A	FF
reg.69	60
WDS:
reg.1C	01
reg.1D	44
reg.1E	0A
reg.1F	03
reg.20	64
reg.21	01
reg.22	47
reg.23	AE
reg.24	02
reg.25	8F
reg.2A	00
reg.69	60

А вот картинки екселя:

По екселевских страницах часть данных совпадает, а часть отличается. Регистры 0x6e 0x6f (TX data rate) так же ставил из калькулятора, хотя в мануале AN440 пишется что они касаются сугубо передачи. 0х1с - полоса захвата приема, когда работал рандомный прием, менял ее, и заметил что если она шире сигнала, то это не влияет, типа главное чтобы сигнал был разборчив и помещался внутри нее.
Сведение приемника и передатчика (рация Baof. UV-3R), и чип проверял на китайском свистке сканере спектра, визуально все хорошо, но не хочет оно. Что-то не то настраиваю в параметрах. 😦

Если правильно понял, у радейки тон вызова 1750Гц, то есть 1750/1024=1.7кбит/с, при полосе 3КГц 😃

Vladimir_N

С чего Вы взяли, что частота ТX data rate должна быть равной 1,7кбит/с, я ведь сказал что частота должна быть кратной, а не равной 1750Гц. Почитайте внимательно документацию на чип 4432, как формируется частота преамбулы в зависимости от частоты передачи ТX data rate.

Pavel_liev

Кратной это сколько? х2, х4, х8? В мануале 74 страницы, смотрю раздел 3.4, ст24 тайминги, и что там? Мутный расчет частоты, регистры 75-77, то что калькулятор считает на раз-два, мусор. Дальше выбор канала прыжков, каких, куда, зачем? Дальше автоматическая подстройка частоты, опять мутные формулы написанные в стиле 10=2*5, 10/2=5. Раздел 3.5.7, ст31, генерация передачи, и ни слова о частоте преамбулы. Дальше параметры модема и всякие АЦП, ни слова толком о нормальной настройке.

Vladimir_N

Опять уперлись в одну инструкцию. Кратность зависит от типа модуляции. Нету у меня сейчас под рукой нормального компьютера, а с телефона читать докумен ты не удобно. Придется Вам пока разбираться самому или ждать.
PS Для нормальной инициализации количество загружаемых регистров должно быть больше.

Pavel_liev

Да простит меня разработчик, но не выдержал и полез в дизассемблер 😃
В инициализации у меня много чего не хватало. Во первых не указал в 0x70 что скорость ниже 30кбит(хотя ранее читал, правил и завтыкал). Ну и дальше актуальные параметры скорости, короче заработало оно, но какая там реальная скорость все равно не понял. Не знал о 0х1с(ширина канала приема), там в мануале AN440 ст26 пишется бит 7, байпас чего-то там, и без него оказывается не работает.
Просто хотел изменить тайминги бипов, и сунуть в тини13 с si4432, у нас они доступнее, а тут столько мануалов что крышу сворачивает.

Еще у вас было указано слово синхронизации, правда чип до него вроде не доходит, детектор преамбулы срабатывает, но байт с тона оно не примет. Не проверил нужны ли 0х35/36/37 в конфигах, и на всякий выключил заголовки с допами в 0х33. На столе все нормально, осталось проверить актуальную дальность пробуждения.

Еще чучуть лирики по потреблению питания, тест показал что минимальное время “ловли” преамбулы 16мс, при этом чип в режиме приема, и кушает 18мА. Если учитывать помехи и всякую г., лучше сделать время с запасом, например 40мс, если сработка раз в 8 секунд, получим средний ток потребления 125мкА, это без учета потребления si4432 в реж. “standby” и спящей тини13, в среднем около 90мАч/месяц(если все верно).