Агуулгын хүснэгт:

Tinkercad дахь Arduino -тай гэрлийн мэдрэгч (фоторезистор): 5 алхам (зурагтай)
Tinkercad дахь Arduino -тай гэрлийн мэдрэгч (фоторезистор): 5 алхам (зурагтай)

Видео: Tinkercad дахь Arduino -тай гэрлийн мэдрэгч (фоторезистор): 5 алхам (зурагтай)

Видео: Tinkercad дахь Arduino -тай гэрлийн мэдрэгч (фоторезистор): 5 алхам (зурагтай)
Видео: Конфигурация ЖК-дисплея i2c с Arduino UNO в Tinkercad 2024, Долдугаар сарын
Anonim
Гэрэл мэдрэгч (фоторезистор) Tinkercad дахь Arduino -той
Гэрэл мэдрэгч (фоторезистор) Tinkercad дахь Arduino -той

Tinkercad төслүүд »

Ардуиногийн аналог оролтыг ашиглан гэрэл мэдрэмтгий хувьсах эсэргүүцлийн төрөл болох фоторезисторыг хэрхэн уншиж сурцгаая. Үүнийг LDR (гэрлээс хамааралтай эсэргүүцэл) гэж нэрлэдэг.

Та одоог хүртэл Arduino -ийн аналог гаралт бүхий LED -ийг удирдах, хувьсах резисторын өөр нэг төрөл болох потенциометрийг уншиж сурсан байгаа тул бид энэ ур чадвараа энэ хичээл дээр хөгжүүлэх болно. Arduino-ийн аналог оролт (A0-A6 гэж тэмдэглэгдсэн тээглүүрүүд) аажмаар өөрчлөгдөж буй цахилгаан дохиог илрүүлж, энэ дохиог 0-ээс 1023 хүртэлх тоо болгон хөрвүүлдэг гэдгийг санаарай.

Зураг
Зураг

Симуляцийг эхлүүлэх дээр дарж, фоторезистор дээр дарж (дундуур нь гялалзсан шугамтай хүрэн зууван хэлбэртэй) дарж ажлын самбар дээр суулгасан дээжийн хэлхээг судалж, гэрлийн оролтыг тохируулахын тулд гэрэлтүүлгийн гулсагчийг чирнэ үү.

Энэ хичээлээр та энэхүү загварчилсан хэлхээг дээжийн хажуугаар өөрөө бүтээх болно. Физик хэлхээг бий болгохын тулд Arduino Uno самбар, USB кабель, гагнуургүй талх, LED, резистор (220 ом ба 4.7 к ом), фоторезистор, талхны утсыг цуглуул.

Та Tinkercad Circuits ашиглан бараг дагаж мөрдөх боломжтой. Та энэ хичээлийг Tinkercad дотроос үзэх боломжтой (үнэгүй нэвтрэх шаардлагатай)! Дээжийн схемийг судалж, түүний хажууд өөрөө бүтээнэ үү. Tinkercad Circuits нь браузер дээр суурилсан үнэгүй програм бөгөөд хэлхээг бүтээх, дуурайх боломжийг олгодог. Энэ нь сурах, заах, загварчлахад төгс төгөлдөр юм.

Алхам 1: Хэлхээг бий болгох

Цахилгаан хэлхээг бий болгох
Цахилгаан хэлхээг бий болгох
Цахилгаан хэлхээг бий болгох
Цахилгаан хэлхээг бий болгох

Зураг дээрх талхны хавтангийн хэлхээг үзээрэй. Зураг дээрх харьцуулахын тулд энэхүү дээжийн хэлхээний үнэгүй утастай хувилбарыг үзэх нь ашигтай байж болох юм. Энэ алхам дээр та ажлын схем дэх дээжийн хажуугаар энэ хэлхээний өөрийн хувилбарыг бүтээх болно.

Үүнийг дагаж мөрдөхийн тулд Tinkercad Circuits -ийн шинэ цонхыг ачаалж, дээжийн хажуугаар өөрийн хэлхээний хувилбарыг бүтээнэ үү.

Tinkercad Circuits ажлын самбар дахь Arduino -той холбогдсон фоторезистор, LED, резистор, утсыг тодорхойл.

Arduino Uno болон талхны самбарыг бүрэлдэхүүн хэсгүүдийн самбараас одоо байгаа хэлхээний хажууд байгаа ажлын самбар руу чирнэ үү.

Утас үүсгэхийн тулд дарж талхны хавтангийн хүч (+) ба газардуулга (-) төмөр замыг Arduino 5V ба газардуулга (GND) -д холбоно уу.

Талхны тавцангийн эсрэг талд байгаа автобус болон цахилгаан төмөр замыг өргөтгөх (энэ хэлхээний хувьд заавал биш боловч түгээмэл хэрэглэгддэг практик).

LED-ийг хоёр өөр талхны эгнээнд залгаарай, ингэснээр катод (сөрөг, богино хөл) нь эсэргүүцлийн нэг хөлтэй холбогддог (100-1K ом-оос хамаагүй сайн). Эсэргүүцэл нь ямар ч чиглэлд явж болно, учир нь резистор нь LED -ээс ялгаатай тул туйлширдаггүй тул ажиллахын тулд тодорхой байдлаар холбогдсон байх ёстой.

Бусад эсэргүүцлийн хөлийг газардуул.

LED анодыг (эерэг, урт хөлтэй) Arduino pin 9 -ээр холбоно уу.

Фоторезисторыг бүрэлдэхүүн хэсгүүдийн самбараас талхны самбар руу чирэхийн тулд хөл нь хоёр өөр эгнээнд залгагддаг.

Фоторезисторын нэг хөлийг тэжээлд холбосон утас үүсгэхийн тулд дарна уу.

Нөгөө хөлөө Arduino аналог зүү A0 -тэй холбоно уу.

A0 -т холбогдсон фоторезисторын хөлийг газардуу холбохын тулд бүрэлдэхүүн хэсгүүдийн самбараас резисторыг чирээд түүний утгыг 4.7 к ом болгож тохируулна уу.

Алхам 2: Блоктой код бичих

Блоктой код
Блоктой код

Код блок засварлагчийг ашиглан фоторезисторын төлөвийг сонсож, мэдрэгч хэр их гэрэл харж байгаагаас хамааран LED -ийг харьцангуй тод болгож тохируулцгаая. Та Fading LED хичээл дээр LED аналог гаралтын санах ойг сэргээхийг хүсч болно.

Код засварлагчийг нээхийн тулд "Код" товчийг дарна уу. Саарал тэмдэглэгээний блокууд нь кодоо хийх гэж буй зүйлийнхээ талаар тэмдэглэл бичих коммент боловч энэ текстийг програмын нэг хэсэг болгон гүйцэтгээгүй болно.

Код засварлагч дээр Variables ангилал дээр дарна уу.

Фоторезисторын эсэргүүцлийн утгыг хадгалахын тулд "sensorValue" нэртэй хувьсагч үүсгэнэ.

"Бэлэн" блокыг чирнэ үү. Бид фоторезисторын төлөвийг хувьсагч дотор хадгалах болно

sensorValue

Оруулах ангилал дээр дарж "аналог унших зүү" блокыг чирээд "to" гэсэн үгийн дараа "set" блок руу оруулна уу.

Манай потенциометр нь A0 зүү дээр Arduino -тэй холбогдсон байдаг тул уналтын жагсаалтыг A0 болгон өөрчилнө үү.

Гаралтын категорийг дарж "цуваа монитор руу хэвлэх" блокыг чирнэ үү.

Variables ангилалд шилжиж, sensorValue хувьсах хэмжигдэхүүнээ "цуваа дэлгэц рүү хэвлэх" блок дээр чирж, унах жагсаалтыг шинэ мөрөөр хэвлэхээр тохируулсан эсэхийг шалгаарай. Симуляцийг эхлүүлж, мэдрэгчийг тохируулах үед уншилт орж ирж буй эсэхийг шалгахын тулд цуваа дэлгэцийг нээнэ үү. Аналог оролтын утга 0-1023 хооронд хэлбэлздэг.

Бид LED дээр 0 (унтраах) ба 255 (бүрэн тод байдал) хооронд дугаар бичихийг хүсч байгаа тул "газрын зураг" блокыг ашиглан хөндлөн үржүүлэх ажлыг хийх болно. Математикийн ангилал руу очоод "газрын зураг" блокыг чирнэ үү.

Эхний үүрэнд sensorValue хувьсагчийн блокыг чирээд дараа нь 0 -ээс 255 хүртэл мужийг тохируулна уу.

Гаралтын ангилалд буцаж ороод аналог "тогтоосон зүү" блокыг чирнэ үү. 9 -р зүүг тохируулахын тулд үүнийг тохируулна уу.

Өмнө хийсэн газрын зургийн блокоо "тогтоосон зүү" блокийн "to" талбарт чирж, тохируулсан дугаарыг LED зүү рүү PWM ашиглан бичнэ үү.

Control ангилал дээр дараад хүлээлгийн блокыг чирээд програмыг 1 секундээр хойшлуулахын тулд тохируулна уу.

Алхам 3: Photoresistor Arduino кодыг тайлбарлав

Код засварлагч нээгдсэн үед та зүүн талд байрлах доош унах цэсийг дарж "Blocks + Text" командыг сонгож кодын блокоор үүсгэсэн Arduino кодыг илчилж болно. Бид кодыг илүү нарийвчлан судалж байхдаа дагаж мөрдөөрэй.

int sensorValue = 0;

Өмнө

тохируулах()

бид потенциометрээс уншсан одоогийн утгыг хадгалах хувьсагч үүсгэдэг. Энэ нь гэж нэрлэгддэг

int

Учир нь энэ нь бүхэл тоо эсвэл бүхэл тоо юм.

хүчингүй тохиргоо ()

{pinMode (A0, INPUT); pinMode (9, OUTPUT); Цуваа эхлэх (9600); }

Тохиргооны дотор тээглүүрийг ашиглан тохируулдаг

pinMode ()

функц. A0 зүүг оролт болгон тохируулсан тул бид потенциометрийн цахилгаан төлөвийг "сонсох" боломжтой болно. Pin 9 нь LED -ийг хянахын тулд гаралт болгон тохируулагдсан болно. Зурвас илгээх боломжтой байхын тулд Arduino нь цуваа холбооны сувгийг нээдэг

Serial.begin ()

энэ нь baud rate аргументыг шаарддаг (ямар хурдтай харилцах вэ), энэ тохиолдолд секундэд 9600 бит.

хоосон давталт ()

{// мэдрэгчийн утгыг уншина уу sensorValue = analogRead (A0); // мэдрэгчийн уншилтыг хэвлээд Serial.println (sensorValue) хүрээг мэдэх боломжтой болно;

Олон тооны ташуу зураасны дараа юу ч болно

//

Энэхүү тайлбар нь хүмүүст юу хийх ёстойг энгийн хэлээр ойлгоход тусалдаг боловч таны Arduino -ийн ажиллуулдаг програмд ороогүй болно. Үндсэн гогцоонд функц гэж нэрлэдэг

analogRead ();

A0 зүү (0-1023 хүртэлх бүхэл тоо байх болно) төлөвийг шалгаж, энэ утгыг хувьсагчид хадгална

sensorValue

// мэдрэгчийн уншилтыг LED -ийн мужид буулгах

analogWrite (9, газрын зураг (sensorValue, 0, 1023, 0, 255)); саатал (100); // 100 миллисекунд хүлээж байгаарай}

Дараагийн тайлбарыг дагаж буй мөр нь нэг дор маш их зүйлийг хийж байна. Санаж байгаарай

analogWrite ()

Пин дугаар (манай тохиолдолд 9), бичих утга болох 0 -ээс 255 хооронд байх ёстой гэсэн хоёр аргументыг авна. Шугаман функц

газрын зураг ()

үнэлэх тоо (өөрчлөгдөж буй мэдрэгчийн хувьсагч), хүлээгдэж буй хамгийн бага ба хүлээгдэж буй хамгийн их утга, хүссэн min ба max гэсэн таван аргументыг авдаг. Тиймээс

газрын зураг ()

Бидний тохиолдолд функц нь ирж буй SensValue-ийг үнэлэх, гаралтыг 0-1023-аас 0-255 болгон бууруулахын тулд хөндлөн үржүүлгийг хийх явдал юм. Үр дүнг хоёр дахь аргумент руу буцаана

analogWrite ();

зүү 9 -д холбогдсон LED -ийн тод байдлыг тохируулах.

Алхам 4: Физик Arduino хэлхээг бий болгох (заавал биш)

Физик Arduino хэлхээг бий болгох (заавал биш)
Физик Arduino хэлхээг бий болгох (заавал биш)

Физик Arduino Uno -г програмчлахын тулд та үнэгүй програм хангамж (эсвэл вэб засварлагчийн залгаас) суулгаж, дараа нь нээх хэрэгтэй болно. Төрөл бүрийн фото эсүүд өөр өөр утгатай тул хэрэв таны физик хэлхээ ажиллахгүй бол та түүнтэй хосолсон резисторыг өөрчлөх шаардлагатай болж магадгүй юм. Резисторуудын зааварчилгааны электроникийн хичээлээс хүчдэл хуваагчийн талаар илүү ихийг олж мэдэх.

Tinkercad хэлхээнд энд үзүүлсэн холболттой нийцэхийн тулд бүрэлдэхүүн хэсгүүд болон утаснуудаа холбож Arduino Uno хэлхээг холбоно уу. Arduino Uno физик самбартай ажиллах талаар илүү нарийвчлан судлахын тулд үнэгүй Arduino Instructables ангийг үзээрэй.

Tinkercad Circuits кодын цонхноос кодыг хуулж, Arduino програмынхаа хоосон ноорог дээр буулгах эсвэл татаж авах товчийг (доош харсан сум) дарж нээнэ үү.

Та энэ жишээг Arduino програм хангамжаас File -> Examples -> 03. Analog -> AnalogInOutSerial руу очиж олж болно.

USB кабелийг залгаж, програм хангамжийн хэрэгслийн цэснээс самбар, портоо сонгоно уу.

Кодоо оруулаад гараа ашиглан мэдрэгчийг гэрэл хүлээн авахаас хамгаалж,/эсвэл мэдрэгч дээрээ гэрэл асаагаарай!

Мэдрэгчийн утгыг ажиглахын тулд цуваа дэлгэцийг нээнэ үү. Бодит ертөнцийн үнэ цэнэ нь таны гэрэлтүүлгийн нөхцөл байдлаас шалтгаалан 0 хүртэл эсвэл 1023 хүртэл үргэлжлэхгүй байх магадлалтай. LED дээрх хамгийн тод гэрлийн илэрхийлэлийг авахын тулд 0-1023 хүрээг ажиглагдсан хамгийн бага ба ажиглагдсан хамгийн дээд хэмжээнд нь тохируулж болно.

Алхам 5: Дараа нь үзээрэй …

Та фоторезисторыг уншиж, LED -ийн гэрлийг хянахын тулд түүний гаралтыг газрын зураг дээр сурч мэдсэн бол одоо хүртэл олж авсан бусад чадвараа ашиглахад бэлэн боллоо.

Та LED -ийг servo мотор гэх мэт өөр төрлийн гаралтаар сольж, мэдрэгчийн одоогийн гэрлийн түвшинг хэмжигч дагуух тодорхой байрлалд тусгах код үүсгэж болох уу?

Фоторезистороо хэт авианы зайн мэдрэгч эсвэл потенциометр гэх мэт бусад аналог оролтоор сольж үзээрэй.

Цуваа дэлгэц ашиглан Arduino -ийн дижитал болон аналог оролтыг компьютерээр хэрхэн хянах талаар дэлгэрэнгүй үзнэ үү.

Зөвлөмж болгож буй: