Мазмуну:

Электрондук которуу: 5 кадам
Электрондук которуу: 5 кадам

Video: Электрондук которуу: 5 кадам

Video: Электрондук которуу: 5 кадам
Video: Экилик эсептөө системасынан ондук эсептөө системасына жана тескерисинче которуу алгоритми 2024, Ноябрь
Anonim
E-Switch
E-Switch

Бул көрсөтмө Түштүк Флорида университетинин Макекурстун долбоорунун талабын аткаруу үчүн түзүлгөн (www.makecourse.com).

Электрондук которуу-бул Arduino Uno, IR кабылдагыч жана HCSR04 жакындык сенсорун колдонуп, жарык өчүргүчкө бекитилген servo моторду башкаруу. Бул продукт энергияны үнөмдөө жана алыстан башкаруу мүмкүнчүлүктөрү аркылуу жеткиликтүүлүктү кошуу үчүн түзүлгөн. Продукт мурдагылардан айырмаланат, ал орнотууга даяр, болгону учурдагы жарык өчүргүчтү бурап коюу керек, мындан ары монтаж же зым талап кылынбайт. Керектүү материалдар төмөндө келтирилген:

  • Arduino Uno
  • HCSR04 жакындык сенсору
  • IR алуучу + Алыстан
  • SG90 Servo Motor
  • 3D принтер + PLA жипчеси
  • Зымдар
  • Small Breadboard
  • Velcro
  • Электр тасмасы

1 -кадам: Кабелдөө

Электр өткөргүчтөрү
Электр өткөргүчтөрү

Бул схема үчүн 3 тышкы компонент бар, серво, жакындык сенсору жана IR алуучу. Бардык компоненттер бир эле жерге жана VCC жабдууларын колдонуу менен параллель туташтырылышы керек.

IR кабыл алгыч: IR алуучунун 3 төөнөгүчтөрү бар, сол жагында санариптик пин 2ге туташкан сигналдын пини бар. Орто пин - жер казыгы, ал эми акыркы пин - 5В талап кылган чыңалуу пини

HCSR04 Жакындык сенсору: Жакындык сенсорунда 4 төөнөгүч бар, солдон оңго карай алар VCC (+5V), Триг (пин 4), Эхо (пин 3) жана жер

SG90 Servo Motor: Серводо 3 туташуу бар, кызыл VCC (+5V), күрөң жер жана сары сигнал (pin 5)

2 -кадам: Код

Code
Code
Code
Code

*Код.rar файлы катары жүктөлдү, аны ачуу керек*

Arduino коду HCSR04 жана IR алуучуну киргизүү катары колдонот, ал эми servo мотору - бул жалгыз чыгаруу. Серво кыймылдаткычтарынын учурдагы абалын жазуу үчүн "абал" деп аталган өзгөрмө колдонулат. 0 сервонун өчүк абалда экенине туура келет, 1 күйгүзүлгөн абалдын көрсөткүчү.

Укурукта, биринчи кадам - акыркы жазылган жакындык сенсорунун аралыкын жаңыртуу (lastValue), кийинки учурдагы аралыкты (аралыкты) жазуу, андан кийин бул баалуулуктар салыштырылат. Эгерде lastValue учурдагы аралыктан чоң болсо, анда кол жакындап келе жатат, ал эми серво 90 градуска төмөн бурулуп, учурдагы абал 1 экенин эске алып, жарыкты өчүрөт. артка чегинүү, жана серво учурдагы абал 0 экенин эске алганда, чырактарды күйгүзүү менен 90 градуска өйдө бурулат. Эгерде бул шарттардын бири да аткарылбаса, IR кабылдагычы сигналдарды текшерип, аларды чечип, "жыйынтыктарды" чыгарат. Натыйжага жараша, IR кабылдагычы өйдө же ылдый бурулат. 0xFFE01F коду IR пультунун плюс баскычына туура келет, жана эгерде кабыл алынган болсо, сервону өйдө карай буруп, жарыкты күйгүзөт, учурдагы абал 0 экенин эске алганда. 0xFFA857 коду IR пультунун минус баскычына туура келет, жана эгер ал кабыл алынса Серво төмөн карай жарыкты өчүрүү үчүн, учурдагы абал 1 экенин эске алганда. Эгерде эч кандай сигнал кабыл алынбаса, анда код илинип, издөөнү уланта берет (irrecv.resume).

3 -кадам: 3D басылган компоненттер

3D басылган компоненттер
3D басылган компоненттер
3D басылган компоненттер
3D басылган компоненттер
3D басылган компоненттер
3D басылган компоненттер

Бул долбоор үчүн эки компонентти иштеп чыгуу жана басып чыгаруу керек болчу, сервопривод үчүн жарык которгуч кронштейн жана учурдагы өчүргүчтөргө оңой жабыла турган бардык компоненттер үчүн корпус.

  • Жарык алмаштыргыч кронштейни: Бул бөлүк анын тиштеринин ортосундагы жарык өчүргүчтү кармап туруу үчүн иштелип чыккан, ал ошондой эле серво моторуна бекитүү үчүн иштелип чыккан жана андайлар үчүн тешиги бар.
  • Корпустун 4 бөлүмү бар: бири тик бурчтуу ачылган корпустун алдыңкы базасында жайгашкан жакындык сенсору үчүн. Түздөн -түз мунун үстүндө Arduino жана IR кабыл алгычтын бөлүмү бар, ал башка бөлүмдөргө алып баруучу тешиктерге (зым үчүн), ошондой эле бурамалар үчүн тешиктерге курулган. Корпустун арткы тарабы оюк. Эки тиштүү камтылган чоң аянт - бул servo мотор жана нан бөлүкчөсү, тиштеринин аралыгы жана servo моторун орнотуу үчүн өлчөмү бар. Кичинекей бөлүк акыркы болуп саналат жана 9В батарейкага орнотулган.

4 -кадам: Ассамблея

Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея
Ассамблея
  1. Зымдарды HCSR04 төөнөгүчтөрүнө туташтырыңыз, андан кийин сенсорду анын бөлүмүнө сүрөттөлгөндөй жайгаштырыңыз. Зымдарды тешиктер аркылуу жана мотор бөлүгүнө өткөрүңүз.
  2. Зымдарды IR кабылдагычтын казыктарына туташтырыңыз, андан кийин кабыл алуучуну Arduino отсегинин ички алдыңкы панелине электр лентасы менен бекитип, байланыштын көйгөйлөрүн алдын алуу үчүн ресивердин башы капталдан чыгып кетишин камсыз кылыңыз. Мүмкүн болушунча корпустун чокусуна жакын жайгаштырыңыз. Зымдарды servo мотор бөлүмүнө түшүрүңүз.
  3. Батареяны туташтыргыч кабелин корпустун эң узун тешиги аркылуу, негизги тешиктин жанынан өткөрүңүз. Туташтыргычтын эки бөлүгү тең тийиштүү тарапта экенин текшериңиз (Arduino коннектору Arduino бөлүмүнө, батарея коннектору батарея бөлүмүнө).
  4. Серво бурамасын колдонуп, сүрөттөлгөндөй 3D басып чыгарылган жарык которгуч кронштейнди servo моторго туташтырыңыз. Андан кийин, зымдарды өйдө каратып, тиштердин жардамы менен servo моторун орнотуңуз.
  5. Нан тактасын орнотуу үчүн Velcro колдонуңуз.
  6. Ардуинону корпусуна жайгаштыруудан мурун, бардык компоненттерди нан тактасына, андан кийин тиешелүү Arduino казыктарына туташтырыңыз. Бардык компоненттердин күчү параллелдүү түрдө берилиши керек. Бүткөндөн кийин, Arduino'ну 9В батареянын портун сыртка каратып бөлүгүнө коюңуз.
  7. 9V батареяны корпусуна салып, Arduino менен туташыңыз.

5 -кадам: Колдонуу

Түзмөктү колдонуу үчүн, жарыкты өчүрүү үчүн колун түзмөккө карай же жарыкты күйгүзүү үчүн түзмөктөн алыстатууга болот. IR пульттун плюс баскычын басуу жарыкты күйгүзөт, ал эми минус басуу жарыкты өчүрөт.

Сунушталууда: