Мазмуну:
- 1 -кадам: Сизге эмне керек…
- 2 -кадам: Бөлүктөрдү туташтыруу
- 3 -кадам: Arduino IDE орнотуу
- 4 -кадам: Кодго убакыт
Video: RGB Температура Көрсөткүчү (XinaBox менен): 5 кадам (Сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Бул расмий түрдө менин биринчи Instructables макалам, ошондуктан мен бул мүмкүнчүлүктү азыр сынап көрүү үчүн колдонуп жатканымды моюнга алам. Платформанын кандай иштээрин, анын колдонуучу тажрыйбасынын бардык жагын сезиңиз. Бирок мен муну кылып жатканда, мен дагы иштеп жаткан жөнөкөй проект жөнүндө бөлүшүү мүмкүнчүлүгүнөн пайдалана алам деп ойлодум (XinaBoxтун продуктуларын колдонуп, "X-in-a-" деп айтылат) Куту ").
Бул жөнөкөй 5 этаптуу көрсөтмөдө мен төмөнкү темаларды камтыйм:
- Керектүү компоненттер
- Ар кандай xChipsди бириктирүү.
- Arduino IDE чөйрөсүн орнотуу.
- Кодду жазуу
- Акыры, идеяны сынап көрүңүз
Мен бул көрсөтмөдө бөлүшпөйм:
- Бул xChip'тердин ар бири эмне кыла аларын жана аларды белгилүү бир функцияларды аткарууга кантип манипуляциялоону түшүндүрүүнү каалаганым менен, бул үйрөткүчтүн максаты болмок эмес. Мен жакынкы аралыкта XinaBoxтун продукт каталогу аркылуу жеткиликтүү болгон ар кандай xChip'терге кире турган башка көрсөтмөлөрдү жарыялоону пландап жатам.
- Мен Arduino кодунун негиздерине кирбеймин, анткени сизде буга чейин Arduino IDE менен иштөө тажрыйбасы бар, ошондой эле C/C ++ программалоо боюнча негизги деңгээлде түшүнүк бар деп ойлойм.
1 -кадам: Сизге эмне керек…
Техникалык жактан алганда, эң негизги продукт үйрөткүчтөр адатта "Hello World!" Менен башталат. Мисалы, же сиз "Arduino" же Raspberry Pi менен бир убакта иштешкениңизден бери тааныш болушуңуз мүмкүн болгон "Blink" мисалы. Бирок мен муну менен баштагым келбейт, анткени баары эле бир нерсени кылып жатышат, бул чындыгында бир аз кызыксыз кылат.
Анын ордуна, мен практикалык долбоордун идеясынан баштагым келди. Кааласаңыз, жетишерлик жөнөкөй жана масштабдуу проект идеясына айландыруучу нерсе.
Бул жерде бизге керектүү нерселер бар (Инструкциянын ушул бөлүмү үчүн берилген сүрөттөрдү караңыз):
- IP02 - Advanced USB программалоо интерфейси
- CC03 - Arm Cortex M0+ Core
- SW02 - VOC жана Аба ырайы сенсору (BOSCH тарабынан BME680 сенсорун колдонот)
- xBUS бириктиргичтери - ар кандай xChips (x2) ортосундагы I2C байланышын иштетүү үчүн
- xPDI туташтыргычы - программалоону жана мүчүлүштүктөрдү оңдоо үчүн (x1)
2 -кадам: Бөлүктөрдү туташтыруу
Бардык бөлүктөрдү бириктирүү үчүн, адегенде xBUS туташтыргычы менен xPDI коннекторунун 1 бөлүгүн баштайбыз.
Мен берген сүрөттөрдөн кийин, xChipsтин багытын жана туташтыргычтар кайда кетерин байкаңыз.
IP02 менен CC03 xChips ортосунда туташтыруучу чекиттерди аныктоо оңой.
CC03 үчүн бул түштүк тарап болот. IP02 үчүн, бул xChipтин түндүк тарабы болот.
Бул бүткөндөн кийин, биз CC03 xChipтин батыш тарабына дагы бир xBUS туташтыргычын кошобуз.
Бүттүбү?
Эми, жөн гана SW02 xChipти CC03дүн батыш тарабына туташтырыңыз.
Биз ноутбукка IP02 киргизүүдөн мурун, эки өчүргүч үчүн төмөнкү параметрлер тандалганын текшериңиз:
- B тандалды (солго которуу)
- DCE тандалды (оңго которуу)
Акыр -аягы, биз азыр ноутбукка IP02 салып, Arduino IDE орнотууну баштоого даярбыз.
3 -кадам: Arduino IDE орнотуу
Дагы, бул үйрөткүчтө, сиз Arduino IDE чөйрөсү менен таанышсыз, ошондой эле өнүгүү чөйрөсүндөгү китепканаларды кантип башкаруу керек деген божомолду айттым.
Бул долбоордун максаты үчүн бизге эки негизги китепкана керек болот:
- arduino-CORE-https://github.com/xinabox/arduino-CORE
- SW02 китепканасы -
Эки китепкананы тең рабочий столго жүктөп алыңыз.
Андан кийин, Arduino IDEди ишке киргизиңиз.
Негизги менюдан "Эскиз"> "Китепкананы кошуу"> ". ZIP китепканасын кошуу…"
Китепкана файлдары үчүн бир эле процессти кайталаңыз.
Андан кийин, биз тиешелүү "Башкарманы", ошондой эле "Портту" тандашыбыз керек болот. (Мен кызгылт сары түстөгү кутучаны колдонуп, керектүү тандоолорду баса белгилеп койгом.
- Такта: "Arduino/Genuino Zero (Native USB Port)"
- Порт: "COMXX" (бул сиздин машинаңызда чагылдырылган COM портуна ылайык болушу керек. Меники COM31ди колдонуп жатат)
Жарайт! Мен билем, сиз коддоону кааладыңыз, андыктан кийинки кадамда биз буга көңүл бурабыз.
4 -кадам: Кодго убакыт
Бул бөлүмдө мен долбоордун кодунун үзүндүлөрүн бөлүшүүдөн баштайм. Жана аягында, мен кодду Arduino IDE булак файлына көчүрүп, чаптоону жеңилдетип, толук булакты жарыялайм.
Баш файлдар:
#include /* Бул негизги XinaBox Негизги Функцияларынын китепканасы. */
#include /* Бул VOC & Weather Sensor xChip үчүн китепкана. */
RGB Led сигналдарын көзөмөлдөө үчүн кээ бир константаларды аныктоо:
#Define redLedPin A4
#жашылЛедПин 8ди аныктоо #көкЛедПин 9
Андан кийин, биз RGB баалуулуктарын өткөрүү үчүн функциянын прототипин жарыялашыбыз керек
жараксыз setRGBColor (int redValue, int greenValue, int blueValue);
SW02 объектисин жарыялоо:
xSW02 SW02;
Setup () ыкмасы:
жараксыз орнотуу () {
// I2C Communication Wire.begin баштоо (); // SW02 сенсорун баштаңыз SW02.begin (); // Кечигүүнү нормалдаштыруу үчүн сенсордун кечигүүсү (5000); }
Эми негизги цикл үчүн ():
void loop () {
float tempC; }
Андан кийин, сенсордук чип менен байланышты баштоо үчүн, биз программада мурда жараткан SW02 объектинин жардамы менен сурамжылоо жүргүзүшүбүз керек болот:
// SW02 sensorSW02.poll () маалыматтарын окуу жана эсептөө;
Азыр биз сенсордун температурасын окуу үчүн окуп жатабыз
tempC = SW02.getTempC ();
Бизде окуу болгондон кийин, биз жасай турган акыркы нерсе, эгер температуранын диапазонун аныктоо үчүн if… else… control операторлорун колдонуу жана андан кийин setRGBColor () функциясын чакыруу
// Сиз климатыңызга жараша температуранын диапазонун тууралай аласыз. Мен үчүн, мен Сингапурда жашайм, // жыл бою тропикалык болуп саналат жана температуранын диапазону бул жерде кыйла тар болушу мүмкүн. if (tempC> = 20 && tempC = 25 && tempC = 30 && tempC = 32 && tempC = 35) {setRGBColor (255, 0, 0); }
Эскертүү: Эгерде сиз белгилүү бир түс үчүн тиешелүү RGB баалуулуктары эмне экенин билгиңиз келсе, Google'дан "RGB түс баалуулуктары" боюнча издөө жүргүзүүнү сунуштайм. Сиз каалаган түстү тандоо үчүн түс тандагычты колдоно турган көптөгөн сайттар бар
// Эгерде сиз кааласаңыз жана бул милдеттүү эмес болсо, сенсордун көрсөткүчтөрү үчүн сурамжылоонун ортосундагы кечигүүнү кошо аласыз.
кечигүү (DELAY_TIME);
Сиз, албетте, программанын башында DELAY_TIME константасын жарыялай аласыз, ошондо сиз программанын бир нече жеринде эмес, бир жолу анын маанисин өзгөртүүгө туура келет. Акыр -аягы, биздин RGB LEDди башкаруу функциясы керек:
жараксыз setRGBColor (int redValue, int greenValue, int blueValue) {
analogWrite (redLedPin, redValue); analogWrite (greenLedPin, greenValue); analogWrite (blueLedPin, blueValue); }
Финалдык программа
#кошуу
#кошуу #аныктоо redLedPin A4 #define greenLedPin 8 #аныктоо blueLedPin 9 боштук setRGBColor (int redValue, int greenValue, int blueValue); const int DELAY_TIME = 1000; xSW02 SW02; void setup () {// I2C Communication Wire.begin () баштаңыз; // SW02 сенсорун баштаңыз SW02.begin (); // Кечигүүнү нормалдаштыруу үчүн сенсордун кечигүүсү (5000); } void loop () {// SW02 float tempCден окулган маалыматтарды сактоо үчүн өзгөрмөнү түзүңүз; tempC = 0; // SW02 сенсорунун SW02.poll () маалыматын окуу жана эсептөө; // SW02ге температураны өлчөөнү жана // temperatue өзгөрмөсүн tempC = SW02.getTempC () сактоо үчүн суроо бериңиз; if (tempC> = 20 && tempC = 25 && tempC = 30 && tempC = 32 && tempC = 35) {setRGBColor (255, 0, 0); } // Сенсордун ортосундагы кечигүү окуу кечигүүсү (DELAY_TIME); } боштук setRGBColor (int redValue, int greenValue, int blueValue) {analogWrite (redLedPin, redValue); analogWrite (greenLedPin, greenValue); analogWrite (blueLedPin, blueValue); }
Эми биздин программа даяр болгондон кийин, xChipти программалайлы! Жүктөө процесси Arduino такталарына программаны кантип жүктөгөнүңүз менен бирдей.
Бүткөндөн кийин, эмне үчүн аны розеткадан ажыратып, сыноо үчүн алып чыкпаңыз.
Сунушталууда:
Жабык абанын сапатынын көрсөткүчү: 5 кадам (сүрөттөр менен)
Үй ичиндеги абанын сапатын өлчөгүч: Үйүңүздөгү абанын сапатын текшерүү үчүн жөнөкөй проект. Биз акыркы убакта үйдө көп иштеп/иштеп жаткандыктан, абанын сапатын көзөмөлдөп, терезени ачуу убактысы келгенде өзүңүзгө эскертип коюу жакшы болмок. жана таза абага келиңиз
Halloween Baby көрсөткүчү: 4 кадам (Сүрөттөр менен)
Хэллоуин баласынын индикатору: Жубайым экөөбүз ал Хэллоуинге эмне кийсе болорун билүүгө аракет кылып жатканбыз. Бул мээ чабуулу бир нече түнү болду, ал мага бир аз шашып калдым деп айтуунун кажети жок. Ал канчалык алыс жүргөнүн көрсөтүү идеясы менен келди
Star Track - Arduino Powered Star көрсөткүчү жана трекери: 11 кадам (сүрөттөр менен)
Star Track - Arduino Powered Star Pointer and Tracker: Star track - бул Arduino негизделген, GoTo -тоосуна шыктанган жылдыздарды көзөмөлдөө системасы. Ал 2 Arduino, гиро, RTC модулу, эки арзан тепкич мотору жана 3D басылган структурасы менен асмандагы каалаган нерсени (Асман координаттары берилет) көрсөтүп жана көзөмөлдөй алат
Таяныч кыймылынан майыптыгы бар адамдар үчүн көз айнекке орнотулган лазер көрсөткүчү: 9 кадам (сүрөттөр менен)
Таяныч кыймылынан майыптыгы бар адамдар үчүн көз айнекке орнотулган лазердик көрсөткүч: Церебралдык шал оорусунан жабыркагандар сыяктуу кыймыл-аракетинин оор бузулуулары бар адамдар көп учурда татаал байланыш муктаждыктарына ээ. Байланышка жардам берүү үчүн алфавит жазылган тактайларды же көбүнчө колдонулган сөздөрдү колдонуу талап кылынышы мүмкүн. Бирок, көптөгөн
Батарея деңгээлинин көрсөткүчү: 4 кадам (сүрөттөр менен)
Батарея деңгээлинин индикатору: Эгерде менде камераңыз болсо, анда сизде дагы батарейкалар бар, маселе, сиз батарейканын толук же бош экенин эч качан билбейсиз! мага калган күч жөнүндө болжол менен түшүнүк бер