Отговори на тема  [ 18 мнения ]  Отиди на страница 1, 2  Следваща
Протокол за безжичен сензор 
Автор Съобщение
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Пет Окт 27, 2006 6:23 pm
Мнения: 162
Местоположение: Севлиево
Мнение Протокол за безжичен сензор
Здравейте. Имам една мини метеостанция за измерване на външна и вътрешна температура на фирмата "ТСМ". Дисплея ми е частично повреден и не се вижда добре вътрешната температура. Реших да си направя моя такава с един пик, но преди това се заех да разбера какво излъчва външния сензор. Свързах към изхода на един приемник на 433MHz line in на PC и записвах пакетите за различните температури. След това разглеждах получените диаграми и на пръв поглед забелязах, че:
1. Единицата е с продължителност на импулса 400us, а на нулата 980us.
2. Сигнала се предава по два пъти с кратка пауза между пакетите.
3. При всички отделни температури се вижда, че до една част от пакета всичко е еднакво.
4. При една от температурите батериите на сензора не контактуваха добре и светна индикатора за слаба батерия. Това даде промяна в кода от еднаквата част.
5. При една част от температурите дължината на пакетите е различна.
Опитах се да намеря някакво описание на тези протоколли, но това което намерих е различно от това, което излъчва моята метеостанция. Ако някой има информация по какъв начин да разчета пакетите би било добре да сподели :)
Прилагам записаните от мен пакети със съответните температури.


Прикачени файлове:
temp_TCM.doc [21 KiB]
271 пъти
Чет Яну 16, 2014 11:29 am
Профил ICQ
Ранг: Популярен
Ранг: Популярен

Регистриран на: Вто Юни 27, 2006 11:13 am
Мнения: 381
Местоположение: Варна
Мнение Re: Протокол за безжичен сензор
дисплейчето ЛЦД ли е? смисъл ако има вариант да вземеш нивата директно от сегментите, или управлението на дисплея


Чет Яну 16, 2014 2:48 pm
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Пет Окт 27, 2006 6:23 pm
Мнения: 162
Местоположение: Севлиево
Мнение Re: Протокол за безжичен сензор
Ето изглед на изделието :)
По принцип е възможно, но ми се иска да си направя моя станция.


Прикачени файлове:
DSCF1172.JPG
DSCF1172.JPG [ 1.69 MiB | Прегледано 4341 пъти ]
Чет Яну 16, 2014 3:58 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Фев 04, 2005 9:59 pm
Мнения: 6019
Местоположение: София
Мнение Re: Протокол за безжичен сензор
Трябва да похакваш: http://bertrik.sikken.nl/433mhz/

_________________
Warriors of the Night, ASSEMBLER!!!


Чет Яну 16, 2014 4:20 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Пет Окт 27, 2006 6:23 pm
Мнения: 162
Местоположение: Севлиево
Мнение Re: Протокол за безжичен сензор
Това ясно, ама пълен батак :) ще се опитам да хвана нещо смислено от някъде.


Прикачени файлове:
1.JPG
1.JPG [ 698.86 KiB | Прегледано 4320 пъти ]
Чет Яну 16, 2014 4:51 pm
Профил ICQ
Ранг: Популярен
Ранг: Популярен

Регистриран на: Вто Юни 27, 2006 11:13 am
Мнения: 381
Местоположение: Варна
Мнение Re: Протокол за безжичен сензор
идеята ми беше да хванеш управлението на самия дисплей и да си направиш все едно негов дубльор :) ама предполагам е също строго специализиран, и там е трудно да се захапе по лентовия кабел


Пет Яну 17, 2014 11:31 am
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Пет Окт 27, 2006 6:23 pm
Мнения: 162
Местоположение: Севлиево
Мнение Re: Протокол за безжичен сензор
Разбрах те, но пак казвам искам да си направя моя станция, която да измерва и други величини. При наличие на готов сензор не ми се иска да си правя мой нов. И за това е цялата тази хамалогия :)
До тук всички протоколи, които съм разгледал не съвпадат с моя. Но продължавам да търся.


Пет Яну 17, 2014 11:49 am
Профил ICQ
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Нед Окт 19, 2008 7:26 pm
Мнения: 673
Мнение Re: Протокол за безжичен сензор
Пробвай така
Код:
9.8     00000000000000000110110110001010010101000010100010001001001101000100101010000000100110101011010010010000000000000
9.8 0x00 0x00 0xDB 0x14 0xA8 0x51 0x12 0x68 0x95 0x01 0x35 0x69 0x20 0x00
9.8 NUL NUL 219 DC4 168  81(Q)  DC2  104(h) 149 SOH 53(5) 105(i)  32(Space) NUL

Може да не е чак толкова секретно :)
При промяна на някой параметър би трябвало да хванеш къде какво става

_________________
Вниманиене съмвишист....ИЙ.


Нед Яну 19, 2014 1:28 pm
Профил
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Пет Окт 27, 2006 6:23 pm
Мнения: 162
Местоположение: Севлиево
Мнение Re: Протокол за безжичен сензор
И така пробвах ама ... нищо получават се едни стойности, които не вършат никаква работа.


Вто Яну 21, 2014 3:13 pm
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Пет Окт 27, 2006 6:23 pm
Мнения: 162
Местоположение: Севлиево
Мнение Re: Протокол за безжичен сензор
И така..... Стигнах до момента с писането на код за декодиране на полученият сигнал от сензора. Някой може ли да ми подскаже как най-рационално да чета генерираните импулси? т.е. дали с използването примерно на таймер 1. или някакъв алгоритъм с буфериране?!!?
Използвам 16F877А.


Чет Фев 06, 2014 12:01 pm
Профил ICQ
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 17, 2005 5:07 pm
Мнения: 813
Местоположение: Сливен
Мнение Re: Протокол за безжичен сензор
А разбра ли кое е единица и кое нула и кое е байт ?
Иначе най-лесно е според времената да налучкаш някаква скорост и да ползваш UART-a било то софтуерен или хардуерен :)

_________________
Код:
while(true);


Пет Фев 07, 2014 12:22 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Май 01, 2009 4:01 pm
Мнения: 1438
Мнение Re: Протокол за безжичен сензор
Горе е споменато, че 1 и 0 са с различна продължителност в микросекунди. Та с UART-a няма да стане.

С таймер 1 става. В началото на импулса го пускаш и в края го спираш. Сравняваш продължителността дали е 1 или 0 и буташ в някой регистър с RRF или RRL и така 14 байта.


Пет Фев 07, 2014 3:41 pm
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Пон Мар 22, 2010 8:52 pm
Мнения: 328
Мнение Re: Протокол за безжичен сензор
CarBeta написа:
Горе е споменато, че 1 и 0 са с различна продължителност в микросекунди. Та с UART-a няма да стане.

С таймер 1 става. В началото на импулса го пускаш и в края го спираш. Сравняваш продължителността дали е 1 или 0 и буташ в някой регистър с RRF или RRL и така 14 байта.

Възможно е да стане и през УАРТ-а. Ако за импулса с най-голяма продължителност изчислиш скоростта така, че да получиш 0х00, то при късата продължителност ще е число с 1ци в старшите битове. Така ще може да ги разграничаваш.


Пет Фев 07, 2014 3:48 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Май 01, 2009 4:01 pm
Мнения: 1438
Мнение Re: Протокол за безжичен сензор
Абе за няколко бита може и да стане, ама тука са 112. Не мисля, че ще ги хване всичките с тоя трик. А и паузите не са дефинирани. Аз бих го направил с бит-банг и таймер 1.


Пет Фев 07, 2014 3:59 pm
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Пон Мар 22, 2010 8:52 pm
Мнения: 328
Мнение Re: Протокол за безжичен сензор
CarBeta написа:
Абе за няколко бита може и да стане, ама тука са 112. Не мисля, че ще ги хване всичките с тоя трик. А и паузите не са дефинирани. Аз бих го направил с бит-банг и таймер 1.

112 байта не е много трудно да се получат през уарт-а. А в момента на прекъсване може да запомняш към всеки байт и времето на получаване, така ще имаш и разстоянието между тях. Е и прекъсване по всеки фронт също би свършило работа.

Това с уарт-а лично бих го предпочел, защото ти трябва само УСБ->УАРТ преходник и само ПЦ софтуер.


Пет Фев 07, 2014 4:14 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 18 мнения ]  Отиди на страница 1, 2  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни