Агуулгын хүснэгт:
- Алхам 1: Бүх эд ангиудыг авах
- Алхам 2: RC522 RFID уншигч
- Алхам 3: OLED дэлгэц
- Алхам 4: Бүх эд ангиудыг холбоно уу
- Алхам 5: Төслийн код
- Алхам 6: Эцсийн бодол ба сайжруулалт
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:04
Эрхэм хүндэт найзуудаа, өөр нэг заавар авахыг урьж байна. Энэ бол Educ8s.tv -ээс авсан Ник бөгөөд өнөөдөр бид энгийн түгжээний системийг бий болгохын тулд энэхүү RFID уншигчийг Arduino -той хэрхэн ашиглах талаар сурах болно.
Бид анх удаа Arduino -той RFID хаягийг ашиглах гэж байна. Би уншигчдын ойролцоо байрлуулсан RFID шошго бүрийн өвөрмөц ID (UID) -ийг уншиж, энэ OLED дэлгэц дээр харуулдаг энгийн төслийг би бүтээсэн. Хэрэв шошгоны UID нь Arduino -ийн санах ойд хадгалагдсан урьдчилан тодорхойлсон утгатай тэнцүү бол дэлгэц дээр бид "Unlocked" гэсэн мессежийг харах болно. Хэрэв картны өвөрмөц ID нь урьдчилан тодорхойлсон утгатай тэнцэхгүй бол түгжээг тайлах мессеж гарч ирэхгүй. Хөөрхөн биш үү?
Хамрах олон зүйл байгаа тул эхлүүлцгээе!
Алхам 1: Бүх эд ангиудыг авах
Энэхүү төслийг бүтээхэд шаардлагатай хэсгүүд нь:
- An Arduino Uno ▶
- RFID уншигч ▶
- OLED дэлгэц ▶
- Жижиг талхны самбар ▶
- Зарим утас ▶
Нэмэлт хэсгүүд:
Powerbank ▶
Төслийн нийт өртөг нь ойролцоогоор 15 доллар юм.
Алхам 2: RC522 RFID уншигч
RFID хаяг бүр дотроо жижиг чиптэй байдаг. Хэрэв би энэ RFID картын доор гар чийдэн байрлуулбал жижиг чип болон түүнийг хүрээлсэн ороомог харагдаж байна. Энэ чип нь цахилгаан авахын тулд зайгүй байдаг. Энэ нь том ороомог ашиглан утасгүй төхөөрөмж, уншигчдаас хүч авдаг. Уншигч нь ийм RFID картыг 20мм хүртэлх зайнаас унших боломжтой!
Үүнтэй ижил чип түлхүүрийн оосор RFID хаягууд дээр байдаг.
RFID шошго бүр өөрийн гэсэн өвөрмөц дугаартай байдаг. Энэ бол бидний OLED дэлгэц дээр харуулдаг UID юм. Энэхүү UID -ээс бусад хаяг бүр өгөгдлийг хадгалах боломжтой. Энэ төрлийн картуудад бид 1K хүртэлх өгөгдлийг хадгалах боломжтой! Гайхалтай биш гэж үү? Бид энэ функцийг өнөөдөр ашиглахгүй, гэхдээ ирээдүйд зааврын дагуу ашиглах болно. Өнөөдөр бидний сонирхож буй зүйл бол UID -ээр тодорхой картыг тодорхойлох явдал юм. RFID уншигч болон эдгээр хоёр RFID картны үнэ ойролцоогоор 4 доллар байна.
Алхам 3: OLED дэлгэц
Энэ бол Arduino дээр ашиглахад маш сайхан дэлгэц юм. Энэ нь OLED дэлгэц бөгөөд энэ нь бага эрчим хүчний хэрэглээтэй гэсэн үг юм. Энэхүү дэлгэцийн эрчим хүчний хэрэглээ нь ойролцоогоор 10-20 мА бөгөөд хичнээн пиксел асахаас хамаарна.
Дэлгэцийн нягтрал нь 128 х 64 пиксел бөгөөд жижиг хэмжээтэй. Дэлгэцийн хоёр хувилбар байдаг. Тэдний нэг нь монохром, нөгөө нь миний хэрэглэдэг шиг шар, цэнхэр гэсэн хоёр өнгийг харуулдаг. Дэлгэцийн дээд хэсэгт зөвхөн шар өнгө, доод хэсэгт цэнхэр өнгө л харагдана.
Энэхүү OLED дэлгэц нь маш тод бөгөөд номын сангийн маш сайн дэмжлэгтэй байдаг. Adafruit энэ дэлгэцийн хувьд маш сайхан номын сан бүтээжээ. Нэмж дурдахад дэлгэц нь I2C интерфэйсийг ашигладаг тул Arduino -тай холбогдох нь маш хялбар юм. Та Vcc болон GND -ээс бусад хоёр утсыг холбох хэрэгтэй. Хэрэв та Arduino -д шинэхэн байгаа бөгөөд төсөл дээрээ ашиглахад хямд, ашиглахад хялбар дэлгэцийг хүсч байвал дэлгэцээс эхэл. Энэ бол Arduino төсөлдөө дэлгэц нэмэх хамгийн хялбар арга юм. Би энэ зааварт хавсаргасан энэхүү дэлгэцийг хэрхэн ашиглах талаар нарийвчилсан заавар бэлдсэн болно.
Алхам 4: Бүх эд ангиудыг холбоно уу
Arduino Uno самбартай холбох нь маш энгийн. Эхлээд уншигч болон дэлгэцийн хүчийг холбож үзье.
Анхаарна уу, RFID уншигч нь Arduino Uno -ийн 3.3V гаралттай холбогдсон байх ёстой, эс тэгвээс энэ нь устах болно. Дэлгэц нь 3.3В хүчдэлд ажиллах боломжтой тул бид VC -ийг хоёр модулийн талхны хавтангийн эерэг төмөр замд холбодог. Энэ төмөр замыг дараа нь Arduino Uno -ийн 3.3V гаралттай холбоно. Дараа нь бид GND -ийг хоёуланг нь GND талхны төмөр замд холбодог. Дараа нь бид талхны хавтангийн GND төмөр замыг Arduino GND -тэй холбоно.
OLED дэлгэц - Arduino
Vcc ▶ 3.3V
GND ▶ GND
SCL ▶ Аналог Pin 5
SDA ▶ Аналог Pin 4
RFID уншигч - Arduino
RST ▶ Дижитал зүү 9
IRQ ▶ Холбогдоогүй байна
MISO ▶ Дижитал зүү 12
MOSI ▶ Дижитал зүү 11
SCK ▶ Дижитал зүү 13
SDA ▶ Дижитал зүү 10
RFID уншигч модуль нь Arduino -той холбогдохын тулд SPI интерфэйсийг ашигладаг. Тиймээс бид Arduino UNO -ийн тоног төхөөрөмжийн SPI тээглүүрийг ашиглах гэж байна. RST зүү нь дижитал зүү 9 рүү ордог. IRQ зүү нь холбогдоогүй хэвээр байна. MISO зүү дижитал зүү 12. MOSI зүү дижитал зүү 11 рүү шилждэг. SCK зүү нь дижитал зүү 13 руу ордог бөгөөд хамгийн сүүлд SDA зүү дижитал зүү 10 руу ордог. RFID уншигч холбогдсон байна. Одоо бид O2D дэлгэцийг I2C интерфэйсийг ашиглан Arduino -той холбох ёстой. Тиймээс дэлгэцийн SCL зүү нь аналог Pin 5 ба SDA зүү нь аналог Pin 4 рүү шилждэг. Хэрэв бид одоо төслийг асааж, RFID картыг уншигчийн ойролцоо байрлуулбал төсөл хэвийн ажиллаж байгааг харж болно! Одоо төслийн кодыг харах цаг болжээ.
Алхам 5: Төслийн код
Төслийн кодыг эмхэтгэхийн тулд бид зарим номын санг оруулах хэрэгтэй. Юуны өмнө бидэнд MFRC522 Rfid номын сан хэрэгтэй. Үүнийг суулгахын тулд Sketch -> Номын санг оруулах -> Номын санг удирдах хэсэгт очно уу. MFRC522 -ийг хайж олоод суулгаарай. Дэлгэцийн хувьд бидэнд Adafruit SSD1306 номын сан, Adafruit GFX номын сан хэрэгтэй. Хоёр номын санг ижил процедураар суулгаарай. Adafruit SSD1306 номын санд бага зэрэг өөрчлөлт оруулах шаардлагатай байна. Arduino -> Libraries хавтас руу очиж Adafruit SSD1306 фолдерыг нээгээд Adafruit_SSD1306.h номын санг засна уу. Сэтгэгдэл бичих 70 ба тайлбаргүй мөр 69. Манай дэлгэц 128x64 нарийвчлалтай тул үүнийг энд тодорхойлж байна. Одоо бид кодыг хурдан судлахад бэлэн байна.
Эхлээд бид Arduino -г хүлээн зөвшөөрөхийг хүсч буй RFID шошгоны үнэ цэнийг зарлаж байна. Энэ бол бүхэл тоонуудын массив юм.
int код = {69, 141, 8, 136}; // Энэ бол хадгалагдсан UID юм
Дараа нь бид RFID уншигч болон дэлгэцийг эхлүүлнэ.
rfid. PCD_Init (); display.begin (SSD1306_SWITCHCAPVCC, 0x3C);
Үүний дараа давталтын функц дээр бид уншигч дээрх шошгыг 100 мс тутамд шалгадаг.
Хэрэв уншигч дээр шошго байгаа бол бид түүний UID -ийг уншиж, дэлгэц дээр хэвлэнэ. Дараа нь бид дөнгөж уншсан шошгоны UID -ийг кодын хувьсагчид хадгалагдсан утгатай харьцуулж үздэг. Хэрэв утгууд ижил байвал бид UNLOCK мессежийг харуулна, эс бөгөөс бид энэ мессежийг харуулахгүй.
if (match) {Serial.println ("\ nБи энэ картыг мэднэ!"); printUnlockMessage (); } өөр {Serial.println ("\ nҮл мэдэгдэх карт"); }
Мэдээжийн хэрэг, төсөл нь илүү RFID хаягийг танихын тулд 1 -ээс дээш UID утгыг хадгалахын тулд та энэ кодыг өөрчилж болно.
Энэ бол зүгээр л жишээ. Та үргэлж энэхүү зааварт хавсаргасан төслийн кодыг олж болно.
Алхам 6: Эцсийн бодол ба сайжруулалт
Таны харж байгаагаар маш бага зардлаар бид төслүүддээ RFID уншигч нэмж болно. Бид ийм уншигчтай аюулгүй байдлын системийг хялбархан бүтээх эсвэл илүү хөгжилтэй төслүүдийг бүтээх боломжтой.
Миний гол зорилго бол энэхүү RFID уншигч болон RFID хаягийг ашиглан хүүхдүүдэд зориулсан интерактив тоглоом бүтээх явдал юм. Ирээдүйн видеон дээр бид RFID шошгоноос өгөгдөл бичих, уншихыг хичээх болно. Энэ үед энэхүү RFID карт уншигчийн талаарх таны сэтгэгдлийг сонсоход таатай байна. Та үүнийг аль нэг төсөлдөө ашиглахаар төлөвлөж байна уу? Доорх сэтгэгдлүүдийн хэсэгт ямар нэгэн санал, санаа бодлоо оруулна уу, баярлалаа!
Зөвлөмж болгож буй:
Зайгаар тэжээгддэг саравчны хаалга ба түгжээний мэдрэгч, нар, ESP8266, ESP-Now, MQTT: 4 алхам (зурагтай)
Батерейгаар тэжээгддэг саравчны хаалга ба түгжээний мэдрэгч, нарны гэрэл, ESP8266, ESP-Now, MQTT: Энэхүү зааварчилгаанд би алсын дугуйны амбаарынхаа хаалга, түгжээний байдлыг хянахын тулд батерейгаар ажилладаг мэдрэгчийг хэрхэн хийснийг танд үзүүлэх болно. Надад цахилгаан сүлжээ байхгүй тул батерейгаар цэнэглэдэг. Зайг жижиг нарны хавтангаар цэнэглэдэг бөгөөд модуль нь
Abellcadabra (Нүүр таних хаалганы түгжээний систем): 9 алхам
Абеллкадабра (Нүүр таних хаалганы түгжээний систем): Хорио цээрийн дэглэм тогтоож байхдаа гэрийнхээ хаалганы нүүр таних төхөөрөмжийг ашиглан цагаа үрэх арга замыг олохыг хичээв. Би үүнийг Абеллкадабра гэж нэрлэсэн бөгөөд энэ нь зөвхөн хонх дардаг хаалганы хонхтой шидэт хэллэг болох Абракадабрагийн хослол юм. Хэхэ
LCD дэлгэц гэрийн түгжээний систем: 6 алхам
LCD дэлгэцийн гэрийн түгжээний систем: Энэхүү төсөл нь гэрийн түгжээний үүргийг гүйцэтгэх бөгөөд 3 оронтой кодыг зөв дарах замаар байшинд нэвтрэх боломжтой болно. LCD нь тухайн хүн кодыг зөв оруулсан эсэхээ мэдээлэхийн тулд харилцаа холбооны хэрэгсэл болж ажиллах болно. IR нь
Цахим түгжээний түлхүүр кодлогч: 4 алхам
Цахим түгжээний түлхүүр кодлогч: Энэ нь 4 товчлууртай хослуулан кодлох интерфэйсийн энгийн програмчлагдсан програм бөгөөд үүнийг түлхүүргүй түгжээний хяналт шаардлагатай байж болох хэд хэдэн төсөлд ашиглаж болно. Зөвхөн түгжих механизмыг эхлүүлэх шаардлагатай дохиог бий болгох ПХБ нь
UC -тай унтраах түгжээний хэлхээ. Нэг товчлуур. Нэг зүү. Тусдаа бүрэлдэхүүн хэсэг: 5 алхам
UC -тай унтраах түгжээний хэлхээ. Нэг товчлуур. Нэг зүү. Салангид бүрэлдэхүүн хэсэг: Сайн байцгаана уу, сүлжээнд асаах/унтраах хэлхээг хайж байсан. Миний олсон бүхэн миний хайж байсан зүйл биш байсан. Би өөртэйгөө ярьж байсан, үүнд хүрэх арга зам заавал байх ёстой. Энэ л надад хэрэгтэй байсан. -Асгах, унтраахад ганц товчлуур дарна. -Зөвхөн ашиглах ёстой