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

Хүүхдийн зан төлөвийг өөрчлөх: 5 алхам (зурагтай)
Хүүхдийн зан төлөвийг өөрчлөх: 5 алхам (зурагтай)

Видео: Хүүхдийн зан төлөвийг өөрчлөх: 5 алхам (зурагтай)

Видео: Хүүхдийн зан төлөвийг өөрчлөх: 5 алхам (зурагтай)
Видео: 🎶 ДИМАШ "ОПЕРА 2". История выступления и анализ успеха | Dimash "Opera 2" 2024, Арваннэгдүгээр
Anonim
Хүүхдийн зан төлөвийг өөрчилөгч
Хүүхдийн зан төлөвийг өөрчилөгч

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

Алхам 1: Энгийн эхлэх: Товчлуур нэмэх

Энгийн эхлэх: Товчлуур нэмэх
Энгийн эхлэх: Товчлуур нэмэх

Энэхүү төслийн эхний алхам нь маш энгийн. 1 Товчлуур нэмэх. Энэ алхамд танд 4 Male to Male Wires, 1 220 Resisitor, товчлуур хэрэгтэй болно.

  1. Цахилгаан талын 5V -ийг талхны самбар дээрх эерэг эгнээнд холбоно уу
  2. GND -ийг талхны сөрөг тал руу холбоно уу

  3. Товчлуурыг талхны самбар дээр оруулна уу
  4. Дараах эгнээний хүчийг түлхэх товчлуурын зүүн доод хэсэгт холбоно уу

  5. Товчлуурын баруун доод хэсэгт резистор ашиглан талхны сөрөг эгнээ рүү товчлуурыг газардуулна.
  6. Arduino -ийн дижитал талын 13 дугаарыг товчлуурын баруун дээд хэсэгт холбоно уу.

Товчлуур бүртгүүлж байгааг кодоороо баталгаажуулна уу.

int child1ButtonPin = 13; // Энэ бол бидний товчлуурыг холбосон зүү юм

int child1ButtonState = 0; // Товчлуурын төлөвийг уншдаг (асаах/унтраах)

int child1Strike = 0; // Хүүхэд хичнээн олон цохилт өгсөн байна

// самбарыг дахин тохируулах эсвэл асаахад тохируулгын функц нэг удаа ажиллана

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); } // давталтын функц дахин дахин ажиллана үүрд void loop () {// товчлуурын төлөвийг унших (асаах эсвэл унтраах) child1ButtonState = digitalRead (child1ButtonPin); if (child1ButtonState == HIGH) // Товчлуур дарагдсан {Serial.println ("HIGH"); саатал (5000); }

if (child1ButtonState == LOW)

{Serial.println ("LOW"); саатал (5000); }}

Алхам 2: Товчлуурын даралтыг бүртгэхийн тулд кодыг өөрчилнө үү

Товчлуур дарахад бүртгүүлэхийн тулд кодыг өөрчилнө үү
Товчлуур дарахад бүртгүүлэхийн тулд кодыг өөрчилнө үү
Товчлуур дарахад бүртгүүлэхийн тулд кодыг өөрчилнө үү
Товчлуур дарахад бүртгүүлэхийн тулд кодыг өөрчилнө үү

Кодоо өөрчлөхийн тулд товчлуурыг дарна уу.

int child1ButtonPin = 13; // Энэ бол бидний товчлуур нь child1ButtonState = 0 -тэй холбогдсон зүү юм. // Товчлуурын төлөвийг унших (асаах/унтраах) int child1PreviousState = 0; // Өмнөх товч төлөв int child1Strike = 0;

// самбарыг дахин тохируулах эсвэл асаахад тохируулгын функц нэг удаа ажиллана

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); } // давталтын функц дахин дахин ажиллана үүрд void loop () {// товчлуурын төлөвийг унших (асаах эсвэл унтраах) child1ButtonState = digitalRead (child1ButtonPin); if (child1ButtonState! = child1PreviousState) {if (child1ButtonState == HIGH) // Товчлуур дарагдсан {child1Strike ++; Serial.println (child1Strike); саатал (1000); }}

}

Дараа нь кодыг өөрчил, ингэснээр хүүхэд 3 цохилт авах бөгөөд дараа нь тэд үндэслэлгүй гэсэн мессеж хүлээн авна.

int child1ButtonPin = 13; // Энэ бол бидний товчлуур нь child1ButtonState = 0 -тэй холбогдсон зүү юм. // Товчлуурын төлөвийг унших (асаах/унтраах) int child1PreviousState = 0; int child1Strike = 0;

// самбарыг дахин тохируулах эсвэл асаахад тохируулгын функц нэг удаа ажиллана

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); } // давталтын функц дахин дахин ажиллана үүрд void loop () {// товчлуурын төлөвийг унших (асаах эсвэл унтраах) child1ButtonState = digitalRead (child1ButtonPin); if (child1ButtonState! = child1PreviousState) {if (child1ButtonState == HIGH) // Товчлуур дарагдсан {child1Strike ++; Serial.println (child1Strike);

хэрэв (child1Strike> = 3)

{Serial.println ("1 -р хүүхэд үндэслэлтэй!"); } саатал (3000); }}

}

Цуваа хяналт нь дээрх зураг шиг харагдах ёстой.

Жич: Хугацаа хоцроход та тухтай байгаа эсэхийг шалгаарай. Бага зэрэг саатал гарахад 1 товчлуурыг нэгээс олон удаа дарах болно!

Алхам 3: Хүүхэдтэй болохын хэрээр олон товчлуур нэмж оруулаарай

Хүүхэдтэй болохын хэрээр олон товчлуур нэмж оруулаарай
Хүүхэдтэй болохын хэрээр олон товчлуур нэмж оруулаарай
Хүүхэдтэй болохын хэрээр олон товчлуур нэмж оруулаарай
Хүүхэдтэй болохын хэрээр олон товчлуур нэмж оруулаарай

Энэ алхамд бид сүүлийн хэдэн алхамыг хуулж авах болно. Хүүхдүүд шиг олон товчлуур нэмж оруулаарай. Миний хувьд би дөрөв нэмнэ. Товчлууртай холбогдсон дижитал зүү кодоо өөрчлөхөө мартуузай. Миний хувьд товчлууруудаа нэмэхийн тулд 12 -оос 10 хүртэл тээглүүр ашигласан. Хэрэв танд сануулах шаардлагатай бол алхам 1:

  1. Цахилгаан талын 5V -ийг талхны самбар дээрх эерэг эгнээнд холбоно уу
  2. GND -ийг талхны сөрөг тал руу холбоно уу

  3. Товчлуурыг талхны тавцан дээр оруулна уу.
  4. Товчлуурын баруун доод хэсэгт резистор ашиглан талхны сөрөг эгнээ рүү товчлуурыг газардуул.

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

Та мөн бүх товчлуурыг удирдахын тулд кодыг өөрчлөх шаардлагатай болно. Хэрэв та ашиглаж байсан мөрүүдийг анхааралтай ажиглах шаардлагатай бол үүнийг санаарай. Та жижиг үсгүүдийг хамтад нь нэмж болохгүй. 1 -ийг String объект гэж зарлах нь хамгийн сайн арга юм.

int child1ButtonPin = 13; // Энэ бол бидний товчлуур нь child2ButtonPin = 12 -тэй холбогдсон зүү юм. int child3ButtonPin = 11; int child4ButtonPin = 10; int child1ButtonState = 0; // товчлуурын төлөвийг унших (асаах/унтраах) int child2ButtonState = 0; int child3ButtonState = 0; int child4ButtonState = 0; int child1PreviousState = 0; int child2PreviousState = 0; int child3PreviousState = 0; int child4PreviousState = 0; int child1Strike = 0; int child2Strike = 0; int child3Strike = 0; int child4Strike = 0;

// самбарыг дахин тохируулах эсвэл асаахад тохируулгын функц нэг удаа ажиллана

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); pinMode (child2ButtonPin, INPUT); pinMode (child3ButtonPin, INPUT); pinMode (child4ButtonPin, INPUT); } // давталтын функц дахин дахин ажиллана үүрд void loop () {// товчлуурын төлөвийг унших (асаах эсвэл унтраах) child1ButtonState = digitalRead (child1ButtonPin);

child2ButtonState = digitalRead (child2ButtonPin);

child3ButtonState = digitalRead (child3ButtonPin);

child4ButtonState = digitalRead (child4ButtonPin);

if (child1ButtonState! = child1PreviousState)

{if (child1ButtonState == HIGH) // Товчлуур дарагдсан {child1Strike ++; Serial.println (String ("Child 1 has:") + child1Strike + "strike");

хэрэв (child1Strike> = 3)

{Serial.println ("1 -р хүүхэд үндэслэлтэй!"); } саатал (3000); }} if (child2ButtonState! = child2PreviousState) {if (child2ButtonState == HIGH) // Товчлуур дарагдсан байна {child2Strike ++; Serial.println (String ("Child 2 has:") + child2Strike + "strike");

хэрэв (child2Strike> = 3)

{Serial.println ("2 -р хүүхэд газардсан!"); } саатал (3000); }}

if (child3ButtonState! = child3PreviousState)

{if (child3ButtonState == HIGH) // Товчлуур дарагдсан {child3Strike ++; Serial.println (String ("3 -р хүүхэд:") + child3Strike + "цохилт");

хэрэв (child3Strike> = 3)

{Serial.println ("3 -р хүүхэд газардсан!"); } саатал (3000); }}

if (child4ButtonState! = child4PreviousState)

{if (child4ButtonState == HIGH) // Товчлуур дарагдсан {child4Strike ++; Serial.println (String ("4 -р хүүхэд:") + child4Strike + "цохилт");

хэрэв (child4Strike> = 3)

{Serial.println ("4 -р хүүхэд үндэслэлтэй!"); } саатал (3000); }}}

Алхам 4: Баззер нэмнэ үү

Buzzer нэмэх
Buzzer нэмэх
Buzzer нэмэх
Buzzer нэмэх

Хүүхдүүд чинь газардсан гэдгээ мэдэж байгаа эсэхийг шалгаарай. Дуугаруулагч нэмж оруулъя. Дуут дохиог холбохын тулд эдгээр хялбар алхмуудыг дагана уу.

  1. Баззераа талхны тавцан дээрээ нэмж, LCD дэлгэц гарч ирэх тул орон зайг төлөвлөөрэй.
  2. Postive талыг (дуугаруулагч нь ар талд нь + байх ёстой) өөрийн хүссэн Pin -тэй холбоно уу. Би 9 хийсэн.
  3. Нөгөө талыг талхны тавцангийн газардуулсан төмөр замд холбоно уу.

Дараа нь, хүүхэд газардвал дуугаралтыг унтраахын тулд кодоо өөрчилнө үү. Таны дуут дохиог кодлох хэд хэдэн өөр арга байдаг, гэхдээ би аяыг (buzzerName, hertz, duration) энгийн байдлаар нь харах дуртай байдаг. Үүний жишээ бол ая (buzzer, 4000, 300) байж болно.

int child1ButtonPin = 13; // Энэ бол бидний товчлуур нь child2ButtonPin = 12 -тэй холбогдсон зүү юм. int child3ButtonPin = 11; int child4ButtonPin = 10; int child1ButtonState = 0; // товчлуурын төлөвийг унших (асаах/унтраах) int child2ButtonState = 0; int child3ButtonState = 0; int child4ButtonState = 0; int child1PreviousState = 0; int child2PreviousState = 0; int child3PreviousState = 0; int child4PreviousState = 0; int child1Strike = 0; int child2Strike = 0; int child3Strike = 0; int child4Strike = 0; const int buzzer = 2;

// самбарыг дахин тохируулах эсвэл асаахад тохируулгын функц нэг удаа ажиллана

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); pinMode (child2ButtonPin, INPUT); pinMode (child3ButtonPin, INPUT); pinMode (child4ButtonPin, INPUT); pinMode (дуугаралт, гаралт); } // давталтын функц дахин дахин ажиллана үүрд void loop () {// товчлуурын төлөвийг унших (асаах эсвэл унтраах) child1ButtonState = digitalRead (child1ButtonPin);

child2ButtonState = digitalRead (child2ButtonPin);

child3ButtonState = digitalRead (child3ButtonPin);

child4ButtonState = digitalRead (child4ButtonPin);

if (child1ButtonState! = child1PreviousState)

{if (child1ButtonState == HIGH) // Товчлуур дарагдсан {child1Strike ++; Serial.println (String ("Child 1 has:") + child1Strike + "strike");

хэрэв (child1Strike> = 3)

{Serial.println ("1 -р хүүхэд үндэслэлтэй!"); ая (дуугаралт, 5000, 500); // 5 герц дууг 5 миллисекундэд илгээдэг

}

саатал (3000); }} if (child2ButtonState! = child2PreviousState) {if (child2ButtonState == HIGH) // Товчлуур дарагдсан байна {child2Strike ++; Serial.println (String ("2 -р хүүхэд:") + child2Strike + "цохилт");

хэрэв (child2Strike> = 3)

{Serial.println ("2 -р хүүхэд үндэслэлтэй!"); ая (дуугаралт, 5000, 500); } саатал (3000); }}

if (child3ButtonState! = child3PreviousState)

{if (child3ButtonState == HIGH) // Товчлуур дарагдсан {child3Strike ++; Serial.println (String ("3 -р хүүхэд:") + child3Strike + "цохилт");

хэрэв (child3Strike> = 3)

{Serial.println ("3 -р хүүхэд газардсан!"); ая (дуугаралт, 5000, 500); } саатал (3000); }}

if (child4ButtonState! = child4PreviousState)

{if (child4ButtonState == HIGH) // Товчлуур дарагдсан {child4Strike ++; Serial.println (String ("4 -р хүүхэд:") + child4Strike + "цохилт");

хэрэв (child4Strike> = 3)

{Serial.println ("4 -р хүүхэд үндэслэлтэй!"); ая (дуугаралт, 5000, 500); } саатал (3000); }}}

Алхам 5: LCD дэлгэц нэмэх

Image
Image
LCD дэлгэц нэмэх
LCD дэлгэц нэмэх

Одоо LCD дэлгэцийг уншихад хялбар, ойлгомжтой болгох боломжийг танд олгоно.

  1. Нэгдүгээрт, lcd дэлгэцийг хянахын тулд потенциометрийг талхны самбар дээр нэмнэ үү. Орон зай дуусах магадлалтай байгаа тул хаана байрлуулахаа болгоомжтой байгаарай.
  2. Зүүн урд хэсгийг ашиглан потенциометрээ цахилгаан дамжуулах хоолойд холбоно уу
  3. Потенциометрийг газардуулахын тулд баруун урд хэсгийг ашиглана уу.
  4. Арын хэсэг нь lcd дэлгэцтэй холбогдоно.
  5. LCD дэлгэцийг талхны тавцан дээрээ нэмээрэй
  6. Эхний дэлгэцийн зүүг газардуулгын төмөр замд газардуулна
  7. Хоёрдахь зүүг цахилгааны төмөр замд холбоно уу.
  8. Гурав дахь LCD зүү нь Arduino дээрх 8 -р зүү рүү ордог
  9. Дөрөв дэх LCD зүү нь Arduino дээрх 7 -р зүү рүү ордог
  10. Тавдугаарт, Arduino дээрх 6 -р зүү рүү орно
  11. Зургаа дахь Pin нь Arduino дээрх 5 -р зүү рүү ордог
  12. LCD дэлгэц дээрх 7 -оос 10 хүртэлх зүү хоосон байна
  13. 11 -р зүү нь Arduino дээрх 5 -р зүү рүү орно
  14. 12 -р зүү нь газардуулсан төмөр зам руу явдаг
  15. 13 -р зүү нь Arduino дээрх 4 -р зүү рүү ордог
  16. 14 -р зүү нь потенциометрийн арын хэсэгт очдог
  17. 15 -р зүү нь цахилгаан төмөр зам руу явдаг
  18. 16 -р зүү нь газрын төмөр зам руу явдаг.

Одоо та lcd дэлгэцийг ашиглахын тулд кодоо шинэчлэх шаардлагатай болно. Үүний тулд та libary Liquid Crystal ашиглана. LCD хэвлэх мэдэгдлүүддээ болгоомжтой байгаарай. Шинэ зурвас хэрэгтэй үед дэлгэцээ цэвэрлэхээ мартуузай. Мөн хоёр мөр ашиглахыг хүсвэл курсороо тохируулахаа мартуузай.

#оруулах

LiquidCrystal lcd (3, 4, 5, 6, 7, 8); // LCD дэлгэцийг тохируулна

int child1ButtonPin = 13; // Энэ бол бидний товчлуурыг int child2ButtonPin = 12 -тэй холбосон зүү юм. int child3ButtonPin = 11; int child4ButtonPin = 10; int child1ButtonState = 0; // товчлуурын төлөвийг унших (асаах/унтраах) int child2ButtonState = 0; int child3ButtonState = 0; int child4ButtonState = 0; int child1PreviousState = 0; // товчлуурын өмнөх төлөв int child2PreviousState = 0 дарагдсан; int child3PreviousState = 0; int child4PreviousState = 0; int child1Strike = 0; // Хүүхдэд хичнээн цохилт өгсөн int int22Strike = 0; int child3Strike = 0; int child4Strike = 0; const int buzzer = 9; // Buzzer

// самбарыг дахин тохируулах эсвэл асаахад тохируулгын функц нэг удаа ажиллана

void setup () {Serial.begin (9600); lcd.begin (16, 2); lcd.print ("Хүүхэд"); lcd.setCursor (0, 1); lcd.print ("Зан төлөвийг өөрчлөх"); pinMode (child1ButtonPin, INPUT); pinMode (child2ButtonPin, INPUT); pinMode (child3ButtonPin, INPUT); pinMode (child4ButtonPin, INPUT); pinMode (дуугаралт, гаралт); } // давталтын функц дахин дахин ажиллана үүрд void loop () {lcd.setCursor (0, 0); // товчлуурын төлөвийг унших (асаах эсвэл унтраах) child1ButtonState = digitalRead (child1ButtonPin);

child2ButtonState = digitalRead (child2ButtonPin);

child3ButtonState = digitalRead (child3ButtonPin);

child4ButtonState = digitalRead (child4ButtonPin);

if (child1ButtonState! = child1PreviousState)

{if (child1ButtonState == HIGH) // Товчлуур дарагдсан байна {lcd.clear (); child1Strike ++; Serial.println (String ("Child 1 has:") + child1Strike + "strike"); lcd.print ("1 -р хүүхэд байна:"); lcd.setCursor (0, 1); lcd.print (child1Strike); lcd.print ("Ажил хаялт!");

хэрэв (child1Strike> = 3)

{Serial.println ("1 -р хүүхэд үндэслэлтэй!"); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Хүүхэд 1 бол"); lcd.setCursor (0, 1); lcd.print ("Газардуулсан!");

ая (дуугаралт, 5000, 500); // 5 герц дууг 5 миллисекундэд илгээдэг

}

саатал (3000); }} if (child2ButtonState! = child2PreviousState) {lcd.clear (); if (child2ButtonState == HIGH) // Товчлуур дарагдсан {child2Strike ++; Serial.println (String ("Child 2 has:") + child2Strike + "strike"); lcd.print ("2 -р хүүхэд байна:"); lcd.setCursor (0, 1); lcd.print (child2Strike); lcd.print ("Ажил хаялт!"); if (child2Strike> = 3) {Serial.println ("2 -р хүүхэд газардсан!"); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("2 -р хүүхэд бол"); lcd.setCursor (0, 1); lcd.print ("Газардуулсан!"); ая (дуугаралт, 5000, 500); } саатал (3000); }}

if (child3ButtonState! = child3PreviousState)

{lcd.clear (); if (child3ButtonState == HIGH) // Товчлуур дарагдсан {child3Strike ++; Serial.println (String ("3 -р хүүхэд:") + child3Strike + "цохилт"); lcd.print ("3 -р хүүхэд байна:"); lcd.setCursor (0, 1); lcd.print (child3Strike); lcd.print ("Ажил хаялт!"); if (child3Strike> = 3) {Serial.println ("3 -р хүүхэд газардсан!"); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Хүүхэд 3 бол"); lcd.setCursor (0, 1); lcd.print ("Газардуулсан!"); ая (дуугаралт, 5000, 500); } саатал (3000); }}

if (child4ButtonState! = child4PreviousState)

{lcd.clear (); if (child4ButtonState == HIGH) // Товчлуур дарагдсан {child4Strike ++; Serial.println (String ("4 -р хүүхэд:") + child4Strike + "цохилт"); lcd.print ("4 -р хүүхэд:"); lcd.setCursor (0, 1); lcd.print (child4Strike); lcd.print ("Ажил хаялт!");

хэрэв (child4Strike> = 3)

{Serial.println ("4 -р хүүхэд үндэслэлтэй!"); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("4 -р хүүхэд бол"); lcd.setCursor (0, 1); lcd.print ("Газардуулсан!"); ая (дуугаралт, 5000, 500); } саатал (3000); }}} Хүүхдийн зан төлөвт тохируулагчийг бий болгоход л хангалттай

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