Мазмуну:
- 1 -кадам: Акселерометр менен өткөргүч
- 2-кадам: RGB-LED менен алуучу
- 3-кадам: C-программалоо
- 4 -кадам: Жыйынтык
Video: Зымсыз акселерометр көзөмөлдөгөн Rgb-LED'лер: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:43
MEMS (Микроэлектро-механикалык системалар) Акселерометрлер уюлдук телефондордо жана камераларда эңкейиш сенсорлору катары кеңири колдонулат. Жөнөкөй акселерометрлер ic-chipтин жана арзан өнүгүү pcb-board катары да жеткиликтүү.
Зымсыз чиптер дагы антенна тармагы жана борттогу ажыратуучу капкактары бар, чогултулган схемаларда жеткиликтүү жана жеткиликтүү. Зымсыз тактаны да, акселерометрди да сериялык интерфейс аркылуу микроконтроллерге илип коюңуз жана сизде nintendo-wii функциялары бар зымсыз контроллер бар. Андан кийин ошол эле типтеги зымсыз чип жана pwm көзөмөлдөгөн rgb-LED диапазону бар ресиверди куруңуз, сизде зымсыз, эңкейиш менен башкарылган түстүү бөлмө чагылган бар. Бергичти тактайдын деңгээлин нан панелин өйдө караңыз жана LED муздак көк, бир гана көк лед активдүү. Андан кийин өткөргүчтү бир жакка кыйшайтыңыз жана кайсы тарапка кыйшайтып жатканыңызга жараша кызыл же жашыл түстө аралаштырасыз. 90 градуска чейин эңкейиңиз, ошондо сиз кызыл же көк же жашыл жана көк түстөрдүн аралашмасынан өтөсүз. X жана y багытында бир аз кыйшайтыңыз жана бардык түстөрдүн аралашмасын аласыз. Бардык багыттар боюнча 45 градуста жарык кызыл, жашыл жана көк түстөрдүн бирдей аралашуусу, башкача айтканда, ак жарык. Колдонулган тетиктер интернет хобби-электрондук дүкөндөрдө бар. Кээ бир сүрөттөрдөн таанылышы керек.
1 -кадам: Акселерометр менен өткөргүч
Бергич Atmel avr168 микроконтроллерине негизделген. 168 менен ыңгайлуу кызыл такта-бул чыңалуу жөнгө салуучу жана баштапкы схемасы бар ардуино-такта. Акселерометр avrга i2c шинасы менен, ал эми зымсыз такта SPI, (Serial Perifheral Interface) менен туташкан.
Нан тактасы толугу менен зымсыз, анын астына 4, 8В батарейка салынган. Зымсыз такта жана arduino wee 9 В чейин кабыл алат жана борттогу сызыктуу чыңалуу жөндөгүчүнө ээ, бирок акселерометрге жөнгө салынуучу темир жолдон 3, 3В керек.
2-кадам: RGB-LED менен алуучу
Алуучу көпөлөк аттуу atmel avr169 демобоардына негизделген. Такта бул долбоордо колдонулбаган көптөгөн өзгөчөлүктөргө ээ. Зымсыз трансивер PortB менен туташкан жана pwm башкарган LED PortD менен туташкан. Электр провайдеринин башына берилет, 4.5В жетиштүү. Зымсыз такта i/o казыктарында 5В чыдай алат, бирок борттогу жөнгө салуучу 3.3V камсыздоого муктаж.
RF трансферери үчүн өзгөртүлгөн баш кабель чындыгында ыңгайлуу жана көпөлөктөгү зымсыз тактаны күч жана аппараттык SPI контроллери менен байланыштырат. Shiftbright-бул rgb жетектеген импульстун тууралоо контроллери, ал 4 байттык буйрукту кабыл алат, андан кийин чыккычтарга илинет. Чындап эле серияга туташуу оңой. Жөн гана көптөгөн буйрук сөздөрүн жылдырыңыз, жана биринчи жылдырылган ромашка чынжырындагы акыркы туташкан LEDге жетет.
3-кадам: C-программалоо
Код C тилинде жазылган, анткени arduino негизделген "оңой" иштетүү тилин үйрөнүүгө кам көргөн жокмун. Мен SPI жана rf transanceiver интерфейсин үйрөнүү тажрыйбасы үчүн өзүм жазгам, бирок avrfreaks.net сайтынан i2c assembler-кодун карызга алдым. Shiftbright интерфейси C-коддо битбанг кылынат. Мен туш болгон бир көйгөй акселерометрдин өндүрүшүндөгү анча чоң эмес иррадициялык вариациялар болчу, бул LEDдин көп жылтылдашына алып келди. Мен муну программалык камсыздоонун төмөн өтүү чыпкасы менен чечтим. Акселерометрдин баалуулугу боюнча орточо салмактуу кыймыл. РФ-трансивер автоматтык түрдө кайра жөнөтүү менен crc жана ack аппараттык колдоосун колдойт, бирок бул долбоор үчүн реалдуу убакытта, леддердин жылмакай жаңыртылышы маанилүү болгон. Бузулган пакеттер жарактан чыгарылганда акселерометрдин мааниси бар ар бир пакеттин алуучуга бүтүн бойдон келүүсүнүн кажети жок. Мен көргөн 20 метр аралыкта жоголгон RF пакеттери менен эч кандай көйгөй болгон жок. Бирок андан ары шилтеме туруксуз болуп калды, жана ледтер дайыма жаңыртылган жок. Псевдо-коддогу өткөргүчтүн негизги цикли: initialize (); while (true) {Values = abs (x, y, z accelerometer баалуулуктарын алуу ()); RF_send (баалуулуктар); кечигүү (20ms);} Псевдо-коддогу алуучунун негизги цикли: initialize (); while (true) {newValues = blocking_receiveRF ()); rgbValues = rgbValues + 0.2*(newValues-rgbValues); shiftbrigth үчүн rgbValues жазуу;}
4 -кадам: Жыйынтык
Мен көзөмөлдүн канчалык жылмакай жана так болгонуна таң калдым. Сиз чынында эле түстүн манжаларынын тактыгын көзөмөлдөй аласыз. Pwm-LED контроллери ар бир түс үчүн 10 биттик чечимге ээ, бул миллиондогон түстөрдү түзөт. Тилекке каршы, акселерометрдин 8 биттик чечими бар, бул теориялык түстөрдүн санын миңдегенге чейин түшүрөт. Бирок түс өзгөртүү боюнча кандайдыр бир кадамды кабыл алуу азырынча мүмкүн эмес. Мен ресиверди IKEA-лампага салып, төмөндө ар кандай түстөгү сүрөткө түштүм. Ошондой эле видео бар, (коркунучтуу сапат)
Сунушталууда:
Bluetooth көзөмөлдөгөн RGB Light: 3 кадам
Bluetooth көзөмөлдөгөн RGB жарыгы: Телефонуңузга бир нече жолу тийип, үйүңүздүн жарыгынын түсүн жана жарыктыгын өзгөрткүңүз келген учурлар болгонбу? Жакшы кабар-муну Realtekтен Ameba RTL8722 сыяктуу Bluetooth иштетилген микроконтроллердин жардамы менен оңой эле жасаса болот. Мына мен
HC12 зымсыз модулун колдонуу менен зымсыз Arduino роботу: 7 кадам
HC12 зымсыз модулун колдонуу менен зымсыз Arduino роботу: Эй балдар, кайра кош келиңиздер. Мурунку постумда, мен H Bridge Circuit деген эмне экенин түшүндүрдүм, L293D мотор айдоочусу IC, piggybacking L293D мотор айдоочусу IC, учурдагы мотор драйверлерин айдоо үчүн жана өзүңүздүн L293D мотор айдоочулар тактаңызды кантип иштеп чыгууга болот
Мобилдик акселерометр көзөмөлдөгөн унаа: 3 кадам
Мобилдик акселерометр башкарылган унаа: Бул абдан жөнөкөй долбоор жана оңой эле жасалышы мүмкүн. Бул Android мобилдик талап кылат. Ар бир Android мобилдик телефонунда камтылган акселерометр бар жана биз муну Bluetooth аркылуу унааны башкаруу үчүн колдонобуз. Биз эмне кылышыбыз керек экенин чечүү үчүн мобилдик телефонду кыйшайтып коюңуз
Raspbian Stretch боюнча TP Link WN7200ND USB зымсыз адаптери менен элүү метр диапазону зымсыз кирүү чекити: 6 кадам
Raspbian Stretch боюнча TP Link WN7200ND USB зымсыз адаптери менен элүү метр аралыкта зымсыз кирүү чекити: Raspberry Pi коопсуз зымсыз кирүү пункттарын түзүүдө эң сонун, бирок анын диапазону жакшы эмес, мен аны узартуу үчүн TP Link WN7200ND USB зымсыз адаптерин колдондум. Мен муну кантип жасоону бөлүшкүм келет Эмне үчүн роутердин ордуна малина пи колдонгум келет? T
Зымсыз эшик коңгуроосун зымсыз ойготкучту күйгүзүү же күйгүзүү/өчүрүү: 4 кадам
Зымсыз эшик коңгуроосун зымсыз ойготкучту өчүрүү же күйгүзүү/өчүрүү: Мен жакында сигнализация системасын куруп, үйүмө орноттум. Мен эшиктердеги магниттик өчүргүчтөрдү колдонуп, аларды чердактан өткөрдүм. Терезелер дагы бир окуя болчу жана аларды катуу зым менен жабуу мүмкүн эмес болчу. Мага зымсыз чечим керек болчу жана бул