Агуулгын хүснэгт:
- Алхам 1: Харилцааны видео
- Алхам 2: Асуудлын мэдэгдэл
- Алхам 3: Энэ нь хэрхэн ажилладаг талаар тойм
- Алхам 4: Материал багаж хэрэгслийн жагсаалт
- Алхам 5: Breadboard ашиглан барилгын ажлыг эхлүүлээрэй
- Алхам 6: Кодыг эхлүүлэх
- Алхам 7: Хүрч дуусгах
Видео: Ажлын өрөөний таймер: 7 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
Хичээлийн өрөөнд цаг хэмжигч хийх заавар.
Алхам 1: Харилцааны видео
drive.google.com/file/d/12z5zQR52AXILX2AGb3EplfbmZWANZiCl/view?usp=drivesdk
Алхам 2: Асуудлын мэдэгдэл
Ихэнх тохиолдолд сургалтын өрөөнүүдийг үргэлж авч явдаг. Энэ нь хүмүүс өрөөнд байх хугацаанаасаа хамаагүй удаан байх дуртай байдагтай холбоотой юм. Бид таймер зохион бүтээсэн бөгөөд энэ нь хүн бүрт нийтдээ 2 цаг зарцуулах боломжийг олгодог бөгөөд өрөөг дараагийн бүлэгт оруулах хүсэлтийг хүлээж буй хүмүүст зориулагдсан болно. Неопиксел дээр RGB ашиглах нь үлдсэн хугацааг илэрхийлэх болно.
Алхам 3: Энэ нь хэрхэн ажилладаг талаар тойм
Таймер нь лазер таслагчаар таслагдсан хэсгүүд, 3 товчлуур, 1 LED, 1 потенциометрээс бүрдэнэ.
Неопиксел ба потенциометрийг NodeMCU руу холбосон. NodeMCU нь потенциометрийг хэр хол эргүүлж, дугуй хэлбэртэй неопиксел зурвас дээр асдаг LED -ийн хэмжээг өөрчлөхөд зориулагдсан болно. Хүсэлтийн товчлуур нь Start, Stop, Set time функцийг зогсооно. Өрөөн доторх таймер дээрх LED -ийн өнгө нь хайрцгийн хажуу талд ассан LED -ийн өнгөтэй ижил байна. Хайрцагны хажуу талд байрлах неопиксел нь барилгын үүдний танхимд аль өрөөг авч, хэр их цаг үлдсэнийг харуулсан дэлгэцийг харуулдаг. Өрөө бүрт 2 LED заасан бөгөөд нэг LED нь өрөөг авсан бол бусад LED нь таймер дээрх LED -ийн өнгийг тусгадаг (ногоон бол илүү их, дараа нь шар, дараа нь улаан өнгөтэй).
Алхам 4: Материал багаж хэрэгслийн жагсаалт
-Нийлэгийг цэвэрлэнэ
-MicroUSB кабель
www.digikey.com/product-detail/en/stewart-…
-Талхны самбар
www.amazon.com/gp/product/B01EV6LJ7G/ref=o…
-Потенциометр
www.alliedelec.com/honeywell-380c32500/701…
-3 товчлуур
www.digikey.com/product-detail/en/te-conne…
-NodeMCU
www.amazon.com/gp/product/B07CB4P2XY/ref=o…
- 2 неопиксел зурвас
www.amazon.com/Lighting-Modules-NeoPixel-W…
-Эсэргүүцэгчид
www.digikey.com/product-detail/en/te-conne…
- Утаснууд
www.digikey.com/product-detail/en/sparkfun…
-1 LED
www.mouser.com/ProductDetail/Cree-Inc/C512…
-Халуун цавуу буу
www.walmart.com/ip/AdTech-Hi-Temp-Mini-Hot…
-Наалдамхай хилэн тууз
www.amazon.com/VELCRO-Brand-90076-Fastener…
Алхам 5: Breadboard ашиглан барилгын ажлыг эхлүүлээрэй
А0 -аас дунд зүү хүртэл потенциометр
Vin to Neopixel бөгжийг асаах
Потенциометрийн нэг талд 3v3 байна
NodeMCU дээр газардах бүх үндэслэл
D1 товчлуурыг хүсэх
LED хүсэх D2
D3 эхлүүлэх товчлуур
D4 товчлуурыг зогсоох
D5 нь цагираг дээрх неопикселийн оролтыг эсэргүүцэх
D6 нь Neopixel оролтын зурваст резистор хийх
Алхам 6: Кодыг эхлүүлэх
Энэ бол таны төсөл одоог хүртэл ажиллаж байгаа эсэхийг шалгах код юм. Таймер нь Neopixel Ring дээрх LED тутамд хэдхэн секунд байх ёстой. Энэ үе хүртэл ажиллаж байгааг мэдсэний дараа доорх мэдэгдлийг заасан хязгаарт оруулах цагийг өөрчлөхөд л хангалттай. Хэрэв та хуваарилах хугацаандаа өөрчлөх шаардлагатай мэдэгдлүүдийг гаргавал би цаг болгон дээр '#Цагийг өөрчлөх' гэж бичнэ.
Кодыг туршиж үзэх:
цагаар импортлох
импортлох хугацаа
машин импортлох ADC -ээс
импортын машин
неопиксел импортлох
adc = ADC (0)
pin = machine. Pin (14, machine. Pin. OUT)
np = neopixel. NeoPixel (зүү, 12)
pin2 = машин. Зүү (12, машин. Зүү. OUT)
np2 = neopixel. NeoPixel (pin2, 8)
l1 = машин. Зүү (4, машин. Зүү. OUT)
b1 = машин. Зүү (5, машин. Зүү. IN, машин.
b3 = машин. Зүү (2, машин. Зүү. IN, машин.
b2 = machine. Pin (0, machine. Pin. IN, machine. Pin. PULL_UP)
l1. утга (0)
def tglled (): # хүсэлт 'LED функцийг солино
хэрэв l1.value () == 0:
l1 үнэ цэнэ (1)
өөр:
l1. утга (0)
x = 0
b1temp1 = 0
b1temp2 = 0
t = 0
b2temp1 = 0
b2temp2 = 0
b3temp1 = 0
b3temp2 = 0
s = 0
үнэн байхад:
# Энэ бол 'хүсэлт' LED -ийг сэлгэх товч юм
b1temp2 = b1. утга ()
b1temp2 биш b1temp2 бол:
tglled ()
цаг унтах (0.05)
b1temp1 = b1temp2
# Энэ бол сүлжээ юм
np2 [0] = np [11]
хэрэв l1.value () == 1:
np2 [1] = (30, 0, 0)
өөр:
np2 [1] = (0, 0, 30)
np2. бичих ()
# Энд бид хичнээн их цаг хэрэгтэйг сонгодог
хэрэв t == 0 бол:
i-ийн хувьд (-1, 12):
хэрэв (l1.value () == 0):
хэрэв (adc.read ()> = (85.34 * (i+1))):
np = (0, 0, 0)
np [11] = (0, 0, 30)
s = (i + 1)
өөр:
np = (0, 0, 30)
np.write ()
өөр:
np = (0, 0, 0)
np.write ()
# Энэ бол таймерыг эхлүүлэх товчлуур юм
хэрэв (l1.value () == 0) ба (t == 0):
b2temp2 = b2. утга ()
b2temp2 биш b2temp2 бол:
x += 1
t += (s * 100)
цаг унтах (0.05)
b2temp1 = b2temp2
# Энэ товчлуур нь таймерыг дуусгадаг
хэрэв (l1.value () == 0):
b3temp2 = b3. утга ()
b3temp2 биш b3temp2 бол:
x = 0
t = 0
цаг унтах (0.05)
b3temp1 = b3temp2
# Энэ бол цаг хэмжигч юм
хэрэв x> 0:
t += 1
if (t> 0) and (t <= 100): #Цагийг өөрчлөх
np [0] = (5, 30, 0)
np [1] = (5, 30, 0)
np [2] = (5, 30, 0)
np [3] = (5, 30, 0)
np [4] = (5, 30, 0)
np [5] = (5, 30, 0)
np [6] = (5, 30, 0)
np [7] = (5, 30, 0)
np [8] = (5, 30, 0)
np [9] = (5, 30, 0)
np [10] = (5, 30, 0)
np [11] = (5, 30, 0)
np.write ()
if (t> 100) and (t <= 200): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (10, 30, 0)
np [2] = (10, 30, 0)
np [3] = (10, 30, 0)
np [4] = (10, 30, 0)
np [5] = (10, 30, 0)
np [6] = (10, 30, 0)
np [7] = (10, 30, 0)
np [8] = (10, 30, 0)
np [9] = (10, 30, 0)
np [10] = (10, 30, 0)
np [11] = (10, 30, 0)
np.write ()
if (t> 200) and (t <= 300): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (15, 30, 0)
np [3] = (15, 30, 0)
np [4] = (15, 30, 0)
np [5] = (15, 30, 0)
np [6] = (15, 30, 0)
np [7] = (15, 30, 0)
np [8] = (15, 30, 0)
np [9] = (15, 30, 0)
np [10] = (15, 30, 0)
np [11] = (15, 30, 0)
np.write ()
if (t> 300) and (t <= 400): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (20, 30, 0)
np [4] = (20, 30, 0)
np [5] = (20, 30, 0)
np [6] = (20, 30, 0)
np [7] = (20, 30, 0)
np [8] = (20, 30, 0)
np [9] = (20, 30, 0)
np [10] = (20, 30, 0)
np [11] = (20, 30, 0)
np.write ()
хэрэв (t> 400) ба (t <= 500): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (25, 30, 0)
np [5] = (25, 30, 0)
np [6] = (25, 30, 0)
np [7] = (25, 30, 0)
np [8] = (25, 30, 0)
np [9] = (25, 30, 0)
np [10] = (25, 30, 0)
np [11] = (25, 30, 0)
np.write ()
хэрэв (t> 500) ба (t <= 600): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (30, 30, 0)
np [6] = (30, 30, 0)
np [7] = (30, 30, 0)
np [8] = (30, 30, 0)
np [9] = (30, 30, 0)
np [10] = (30, 30, 0)
np [11] = (30, 30, 0)
np.write ()
хэрэв (t> 600) ба (t <= 700): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (30, 25, 0)
np [7] = (30, 25, 0)
np [8] = (30, 25, 0)
np [9] = (30, 25, 0)
np [10] = (30, 25, 0)
np [11] = (30, 25, 0)
np.write ()
хэрэв (t> 700) ба (t <= 800): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (30, 20, 0)
np [8] = (30, 20, 0)
np [9] = (30, 20, 0)
np [10] = (30, 20, 0)
np [11] = (30, 20, 0)
np.write ()
хэрэв (t> 800) ба (t <= 900): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (0, 0, 0)
np [8] = (30, 15, 0)
np [9] = (30, 15, 0)
np [10] = (30, 15, 0)
np [11] = (30, 15, 0)
np.write ()
if (t> 900) and (t <= 1000): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (0, 0, 0)
np [8] = (0, 0, 0)
np [9] = (30, 10, 0)
np [10] = (30, 10, 0)
np [11] = (30, 10, 0)
np.write ()
if (t> 1000) and (t <= 1100): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (0, 0, 0)
np [8] = (0, 0, 0)
np [9] = (0, 0, 0)
np [10] = (30, 5, 0)
np [11] = (30, 5, 0)
np.write ()
хэрэв (t> 1100) ба (t <= 1200): #Цагийг өөрчлөх
np [0] = (0, 0, 0)
np [1] = (0, 0, 0)
np [2] = (0, 0, 0)
np [3] = (0, 0, 0)
np [4] = (0, 0, 0)
np [5] = (0, 0, 0)
np [6] = (0, 0, 0)
np [7] = (0, 0, 0)
np [8] = (0, 0, 0)
np [9] = (0, 0, 0)
np [10] = (0, 0, 0)
np [11] = (30, 0, 0)
np.write ()
хэрэв t> = 1300: #Цагийг өөрчлөх
t = 0
x = 0
Алхам 7: Хүрч дуусгах
Одоо, та энд хүрмэгц ажлын кодыг NodeMCU -д байршуулж, бүх эд ангийг самбар дээр холбосон байх ёстой. Та кодыг туршиж үзээд гадна талын эд анги, өөрөөр хэлбэл лазер хайчлах бүрхүүлийг хайчилж авсны дараа утсыг NodeMCU руу гагнах боломжтой. Гагнах нь заавал биш боловч таны бүрхүүлийг илүү найдвартай, жижиг болгож магадгүй юм. Бидний хийсэн лазер хайчлах хэсгүүдийн заримыг энд оруулав.
Зөвлөмж болгож буй:
Ухаалаг ширээний LED гэрэл - Ухаалаг гэрэлтүүлэг W/ Arduino - Neopixels ажлын талбар: 10 алхам (зурагтай)
Ухаалаг ширээний LED гэрэл | Ухаалаг гэрэлтүүлэг W/ Arduino | Neopixels Ажлын талбар: Одоо бид гэртээ маш их цагийг өнгөрөөж, виртуал орчинд ажиллаж, сурч, ажиллаж байгаа тул Arduino болон Ws2812b LED -ийг суурилуулсан, ухаалаг гэрэлтүүлгийн системийг ашиглан ажлын талбараа томруулж яагаад болохгүй гэж. Ширээний LED гэрэл нь
Дэлхийн 2 -р дайны үеийн мултиметрийг ажлын дараалалд оруулах. 3 алхам
Дэлхийн 2 -р дайны үеийн мултиметрийг ажлын дараалалд оруулах. Хэдэн жилийн өмнө би энэхүү цуглуулгадаа зориулж Simpson Electric мультиметрийг худалдаж авсан. Энэ нь насыг нь харгалзан үзвэл маш сайн нөхцөлд байсан хар савхин хайрцгаар ирсэн. АНУ -ын Патентын газар тоолуурын хөдөлгөөнийг патентлах огноо нь 1936 он бөгөөд
Хоббичинд зориулсан электроникийн ажлын станц - Estação De Trabalho Para Entusiastas Em Eletrônica: 10 алхам
Хоббичинд зориулсан электроникийн ажлын станц - Estacaão De Trabalho Para Entusiastas Em Eletrônica: Хүндэтгэсэн багш, электроникийн хоббичин Энэхүү зааварчилгаанд би электроникийн хоббитой хүмүүст зориулсан ажлын станцын барилгын талаар танилцуулж байна.Энэ станц нь электрон хэлхээтэй ажиллах нийтлэг багаж хэрэгсэл, дэмжлэгийг агуулсан болно: хэвлэх зориулалттай нугасан хаалт
D Flip Flops ба 555 таймер бүхий Stepper мотор; тойргийн эхний хэсэг 555 таймер: 3 алхам
D Flip Flops ба 555 таймер бүхий Stepper мотор; Хэлхээний эхний хэсэг 555 таймер: Stepper мотор нь салангид алхамаар хөдөлдөг тогтмол гүйдлийн хөдөлгүүр бөгөөд үүнийг ихэвчлэн принтер, тэр ч байтугай робот техникт ашигладаг. Би энэ хэлхээг алхам алхмаар тайлбарлах болно. хэлхээний эхний хэсэг нь 555 таймер. Энэ бол 555 чиптэй анхны зураг (дээрхийг үзнэ үү)
AVR микроконтроллер. Таймер ашиглан LED гэрэлтүүлэгч. Таймер тасалдсан. Таймер CTC горим: 6 алхам
AVR микроконтроллер. Таймер ашиглан LED гэрэлтүүлэгч. Таймер тасалдсан. Таймер CTC горим: Бүгдээрээ сайн уу! Таймер бол электроникийн салбарт чухал ойлголт юм. Цахим бүрэлдэхүүн бүр цаг хугацааны үндсэн дээр ажилладаг. Энэ цагийн суурь нь бүх ажлыг синхрончлоход тусалдаг. Бүх микроконтроллерууд урьдчилан тодорхойлсон цагийн давтамжтайгаар ажилладаг