Мазмуну:
- 1 -кадам: Бул долбоордо колдонулган нерселер
- 2 -кадам: Окуя
- 3 -кадам: даярдоо
- 4 -кадам: Конфигурация
- 5 -кадам: Орнотуу
- 6 -кадам: Программалоо
- 7 -кадам: Тест
- 8 -кадам: Кийинки кадам
- 9 -кадам: схемалар
- 10 -кадам: Код
Video: Mongoose OS жана XinaBoxтун жардамы менен виртуалдык эшик баскычы: 10 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Mongoose жана xChipsти колдонуп, биз виртуалдык эшик баскычын жасадык. Кызматкерлерди ызы -чуу үчүн физикалык баскычтын ордуна, алар эми муну өздөрү жасай алышат.
1 -кадам: Бул долбоордо колдонулган нерселер
Аппараттык компоненттер
- XinaBox CW02 x 1 Анын ордуна CW01 колдонсоңуз болот
- XinaBox IP01 x 1
- XinaBox PU01 x 1 Сиз көбүрөөк модулдарды программалоону каалабасаңыз, жөн эле IP01ди бийлик үчүн колдонсоңуз болот.
- XinaBox OC03 x 1
- XinaBox XC10 x 1 Баарын иштетүүчү "клей"!
Программалык камсыздоо жана онлайн кызматтары
Mongoose OS чынында эле сонун жана оңой IoT иштеп чыгуу куралы… жана бекер
2 -кадам: Окуя
Биздин кабыл алууда биздин кызматкерлерди ызы -чуу кылыш керек болчу, ошондуктан биз өзүбүздүн дары -дармектерибизди алып, виртуалдык баскычты түзүүнү чечтик. Бул код сизге каалаган браузерден кадимки HTTP чалуусуна окшогон RPC (Remote Process Call) жөнөтүүгө мүмкүндүк берет. Биз Mongoose колдонгонбуз, анткени аны иштетүү абдан оңой жана тез жана ал OTA (аба аркылуу) кодун жаңыртуусу, биз өзүбүздүн технологиябызды орнотуп, убакыттын өтүшү менен программаны жаңыртып, кайра программалоо үчүн өркүндөтө алабыз дегенди билдирет.
3 -кадам: даярдоо
- Mongoose-OSти орнотуңуз: Түз алдыга, бул жерде сиздин ОС үчүн эң жөнөкөй кадамдарды аткарыңыз:
- XC10 туташтыргычын колдонуп IP01 менен CW02ди чыкылдатыңыз. Төмөндөгү сүрөттү караңыз:
- IP01ди USB портуна салыңыз
- IP01 өчүргүчтөрүнүн B жана DCE абалында экенин текшериңиз.
- Mongoose-OSти CW02ге буйрук сабынан жаркылдатыңыз. Бул сыяктуу:
cd
экспорттоо MOS_PORT = bin/mos flash esp32
Сиз ошондой эле консолго кире аласыз жана көбүн ошол жерден жасай аласыз, бирок бул жерде биз аны буйрук сабынан жасайбыз, андыктан иш тез бүтөт. Консолго кирүү үчүн:
cd
bin/mos
4 -кадам: Конфигурация
Бул кадамдарды бир узун билдирүүдө жасоого болот, бирок биз аларды бөлүүнү чечтик, жана сиз баары бир көчүрүп, чаптап койсоңуз болот, муну жеңилдетели:
I2C казыктарын xChips стандартына коюңуз:
bin/mos конфигурация-i2c.scl_gpio = 14 i2c.sda_gpio = 2
Сиздин CW02ди WiFiңызга туташтырыңыз:
bin/mos wifi
WiFi режимин AP режиминде ажыратып, домендик аталышты орнотуңуз, ошондо сиз туура IP дарегин табуунун ордуна CW01ге хосттун аты менен туташа аласыз. Бул төмөнкү учурларда гана иштейт:
- Сиз WiFi режимин AP режиминде өчүрөбүз, биз төмөндө.
- Же Mac колдонуңуз, же Windows машинаңызга Bonjour орнотуңуз.
bin/mos чакыруу Config. Set '{"config": {"wifi": {"ap": {"enable": false}}}}'
bin/mos чакыруусу Config. Set '{"config": {"dns_sd": {"enable": true}}}' bin/mos чакыруу Config. Set '{"config": {"dns_sd": {"host- аты ":" xinabox_switch "}}}
Акыры, конфигурациянын иштеши үчүн CW02ди кайра жүктөөңүз керек
bin/mos чакыруу Config. Save '{"reboot": true}'
Ушундан кийин абдан тез сиз xinabox_switch.local пингге жөндөмдүү болушуңуз керек
5 -кадам: Орнотуу
IP01ди компьютериңизден ажыратыңыз жана жогорку сүрөттөгүдөй схеманы чогултуңуз.
PU01ди (же IP01 менен жабышууну чечсеңиз) USB кубат булагына сайыңыз. Учурдагы которгучтан зымдарды параллелдүү туташтырыңыз (болгондо гана калтырыңыз) OC03кө (полярдык мааниге ээ эмес). Fritzing сүрөтүн караңыз.
Ишке киргизилгенден кийин жана чындыгында сиздин xCW02 менен сүйлөшүп жатканыңызды көрүү үчүн, I2C автобусу болгон автобусту сканерлөө жөнүндө эмне айтууга болот:
bin/mos -порт ws: //xinabox_switch.local/rpc чалуу I2C. Scan
Эгерде баары иштесе жана сиздин xOC03 туура орнотулган болсо, '56' деген сан кайтарылганын көрүшүңүз керек. Бул OC03тун I2C дареги ондукта (он алтылыкта 0x38).
6 -кадам: Программалоо
- Эми Mongoose консолу режиминде ачыңыз, жогорудан караңыз. Терезе менен ачылышы керек, анда порт номерин сурайт, киргизиңиз: ws: //xinabox_switch.local/rpc
- Бул CW02 менен байланышып, бирдиктин мурунтан эле жарк этип, WiFiга туташып калганын түшүнөт, андыктан ал 3 текшерүү белгисин берет. Терезени жаап, файлдардын тизмесин жаңыртыңыз
- Төмөндөгү кодду көчүрүп, init.jsке чаптаңыз жана сактоо+өчүрүүнү басыңыз
- Сиздин схемаңыз азыр программаланган.
7 -кадам: Тест
Сиз азыр башка RPC чалуусун ишке ашырдыңыз, андыктан терминалыңыздан кире аласыз:
bin/mos -порт ws: //xinabox_switch.local/rpc чалуу которуу
… Жана коңгурооңуз 2 секундага кетиши керек. Сиз муну дээрлик каалаган браузерден жасай аласыз:
xinabox_switch.local/rpc/Switch
… ошол эле эффект менен.
8 -кадам: Кийинки кадам
Сиз URL өчүрө турган ар кандай куралды колдоно аласыз. Мен аны Workflow деп аталган Apple тиркемесинен жасайм, бул мага телефонумдан же Apple Watchтун татаалдыгы катары жасоого мүмкүндүк берет, бирок ал жерде башка көптөгөн варианттар бар. Бул жерде менин Workflow сценарийи бар, бирок катталган IP дареги менен: ырахат алыңыз!
Apple App: Workflow - бул жерде катуу коддолгон IP дареги бар
9 -кадам: схемалар
Buzzer Circuit OC03тү учурдагы баскычка параллель орнотуңуз.
Бул жерден жүктөп алыңыз.
OC03 Circuit OC03тү учурдагы баскычка параллель орнотуңуз.
Бул жерден жүктөп алыңыз.
10 -кадам: Код
init.js JavaScript Бул долбоордун негизги жана жападан жалгыз коду.
жүктөө ('api_config.js');
жүктөө ('api_gpio.js'); жүктөө ('api_i2c.js'); жүктөө ('api_net.js'); жүктөө ('api_sys.js'); жүктөө ('api_timer.js'); жүктөө ("api_rpc.js"); let = Cfg.get ('pins.led'); adr = 0x38 болсун; автобус = I2C.get () болсун; I2C.writeRegB (автобус, адр, 3, 0); I2C.writeRegB (автобус, адр, 1, 0); / * ишенимдүү болуу үчүн өчүрүү */ кечигүү болсун = 2000; GPIO.set_mode (жетектелген, GPIO. MODE_OUTPUT); RPC.addHandler ('Switch', милдети (args) {GPIO.toggle (жетектелген); I2C.writeRegB (автобус, адр, 3, 0); / * эгер OC03 кайра туташса * / I2C.writeRegB (автобус, адр., 1, 1); Timer.set (delay, false, function () {GPIO.toggle (led); I2C.writeRegB (bus, adr, 1, 0);}, null); true true;});
Сунушталууда:
Amazon Dash баскычы Үнсүз эшик коңгуроосу: 10 кадам (Сүрөттөр менен)
Amazon Dash баскычы Үнсүз эшиктин коңгуроосу: Конокторду эшиктин коңгуроосуна чейин тосуп алуу үчүн дайыма терезеден карап турасызбы? Иттер менен наристе качан чалса жинди болуп кетүүдөн тажадыңызбы? &Quot; акылдуу " үчүн көп акча короткуңуз келбейт. Чечим? Эшиксиз коңгуроо кагуу сыяктуу
Күн, убакыт жана температура дисплейи XinaBoxтун жардамы менен: 8 кадам
Күн, убакыт жана температура дисплейи XinaBox аркылуу: Coolius OLED дисплейи ESP8266 негизделген Xinabox xChipsти колдонуп Цельсий жана Фаренгейтте күндү, убакытты жана температураны көрсөтөт
Ардуино роботу алыстыгы, багыты жана айлануу даражасы менен (Чыгыш, Батыш, Түндүк, Түштүк) Bluetooth модулу жана Автономдуу робот кыймылынын жардамы менен үн менен башкарылат.: 6 кадам
Ардуино роботу алыстыгы, багыты жана айлануу даражасы менен (Чыгыш, Батыш, Түндүк, Түштүк) Bluetooth модулунун жана Автономдуу Робот Кыймылынын жардамы менен Үн менен Башкарылат. , Сол, Оң, Чыгыш, Батыш, Түндүк, Түштүк) Үн буйругун колдонуу менен аралыкты сантиметр менен талап кылды. Роботту автономдуу түрдө жылдырса болот
Эшик жана Эшик Мониторинги менен Туташкан Автоматтык Жарыктар .: 5 кадам
Автоматтык жарыктар эшик жана эшикти көзөмөлдөө менен туташкан .: Караңгыда коммутатордун тактасын табуу абдан кыйын окшойт, бирок бул проект бул маселени чечүүдө абдан пайдалуу. Мунун чечимин билүү үчүн төмөнкү кадамдарды аткарыңыз
Windows 10до Командалык Сапардын жардамы менен Виртуалдык Wi -Fi тармагын түзүңүз: 10 кадам
Windows 10до Command Prompt аркылуу виртуалдык Wifi тармагын түзүңүз: Мен Windows 10 компьютерлеринде виртуалдык Wi -Fi тармагын түзүү кантип иштээрин көрсөтөм. Мен кантип жасоо боюнча бир нече кадамдарды көрсөтөм, ошондой эле сиздин компьютер функцияны колдойбу же жокпу түшүндүрөм