ចាក់សោរួមបញ្ចូលគ្នា DIY នៅលើ Arduino ។ សោឆ្លាតវៃដោយស្វ័យប្រវត្តិ និង Arduino

ការចាក់សោកូដ DIY នៅលើ Arduino


ផ្ទៃខាងក្រោយ

វាបានកើតឡើងដូច្នេះថានៅកន្លែងធ្វើការ យើងបានសម្រេចចិត្តដំឡើងសោរួមបញ្ចូលគ្នានៅលើទ្វាររបស់យើង ពីព្រោះយើងរត់ចូល និងក្រៅការិយាល័យជានិច្ច ទ្វារដែលគួរតែបិទជានិច្ចក្នុងករណីដែលគ្មានអ្នកកាន់កាប់។ គ្រាប់ចុចច្រើនតែភ្លេចនៅខាងក្នុង។ ជាទូទៅ យើងបានសម្រេចចិត្តថាការចាក់សោរួមបញ្ចូលគ្នាគឺជាដំណោះស្រាយដ៏ល្អ។

ដោយ​បាន​រអ៊ូរទាំ​តាម​ទីផ្សារ​ចៃឆ្កេ និង ebay របស់​ចិន ខ្ញុំ​មិន​បាន​រក​ឃើញ​អ្វី​ដែល​ថោក និង​ធ្ងន់ធ្ងរ​ជាង​នេះ​ទេ ហើយ​បាន​សម្រេច​ចិត្ត​បង្កើត​វា​ដោយ​ខ្លួន​ឯង។ ខ្ញុំនឹងនិយាយភ្លាមៗថាវេទិកា Arduino ត្រូវបានជ្រើសរើសសម្រាប់ភាពសាមញ្ញរបស់វា ដោយសារខ្ញុំមិនមានបទពិសោធន៍ជាមួយ microcontrollers ទាល់តែសោះ។

នៅលើទ្វារជាមួយ នៅខាងក្រៅទ្វារគួរតែមានក្តារចុចដែលពាក្យសម្ងាត់ត្រូវបានបញ្ចូល ហើយរចនាសម្ព័ន្ធដែលនៅសល់គួរតែត្រូវបានធានាសុវត្ថិភាពនៅខាងក្នុង។ កុងតាក់ Reed ត្រូវបានប្រើដើម្បីគ្រប់គ្រងការបិទទ្វារពេញលេញ។ នៅពេលចេញពីការិយាល័យ មនុស្សម្នាក់ចុច “*” នៅលើក្តារចុច ហើយដោយមិនរង់ចាំទ្វារបិទជិតនោះ ធ្វើអាជីវកម្មរបស់គាត់ នៅពេលដែលទ្វារបិទទាំងស្រុង កុងតាក់ Reed នឹងបិទ ហើយសោនឹងបិទ។ . ទ្វារបើកដោយបញ្ចូលលេខសម្ងាត់ 4 ខ្ទង់ ហើយចុច "#" ។

គ្រឿងបន្លាស់

Arduino UNO = 18 ដុល្លារ
Arduino protoshield + breadboard = $6
L293D = ១ ដុល្លារ
កញ្ចប់ខ្សែ 30pcs សម្រាប់ Bradboard = $4
2 រន្ធ RJ45 = $4
ឌុយ RJ45 ចំនួន 2 = 0.5 ដុល្លារ
ឧបករណ៍ចាក់សោកណ្តាល = 250 ជូត។
Reed switch = រហែកដោយសេរីពីបង្អួចចាស់។
បន្ទះដែកយក្ស = ឥតគិតថ្លៃ
លំនៅដ្ឋានពីមជ្ឈមណ្ឌល D-LINK ចាស់ធ្វើពីដែកមួយមិល្លីម៉ែត្រកន្លះ = ឥតគិតថ្លៃ
ការផ្គត់ផ្គង់ថាមពលពីមជ្ឈមណ្ឌល D-LINK ដូចគ្នាសម្រាប់ 12 និង 5V = ឥតគិតថ្លៃផងដែរ។
វីសនិងគ្រាប់សម្រាប់ភ្ជាប់វត្ថុទាំងអស់នេះទៅនឹងរាងកាយ = 100 រូប្លិ៍។
ការបញ្ជាពីចម្ងាយពី សំឡេងរោទិ៍ចោរ= ឥតគិតថ្លៃ។

សរុប: 33,5 ដុល្លារនិង 350 រូប្លិ៍។

មិន​តិច​ទេ​អ្នក​នឹង​និយាយ​ហើយ​អ្នក​ប្រាកដ​ជា​ត្រូវ​ប៉ុន្តែ​អ្នក​ត្រូវ​ចំណាយ​សម្រាប់​ការ​សប្បាយ​! ហើយវាតែងតែល្អក្នុងការប្រមូលផ្តុំអ្វីមួយដោយដៃរបស់អ្នកផ្ទាល់។ លើសពីនេះទៀតការរចនាអាចត្រូវបានកាត់បន្ថយយ៉ាងខ្លាំងនៅក្នុងការចំណាយប្រសិនបើអ្នកប្រើ MK ទទេដោយគ្មាន Arduino ។

កំពុងរៀបចំសម្រាប់ការជួបប្រជុំគ្នា។

ខ្ញុំចង់និយាយពាក្យពីរបីអំពីការទិញធាតុសំខាន់នៃការរចនា actuator ។ ហាង​លក់​រថយន្ត​ក្នុង​ស្រុក​មួយ​បាន​ផ្តល់​ឱ្យ​ខ្ញុំ​នូវ​ឧបករណ៍​បញ្ឆេះ​ពីរ​ប្រភេទ៖ “មាន​ខ្សែ​ពីរ និង​មាន​ប្រាំ”។ បើ​តាម​ស្ត្រី​លក់​វិញ ពួកវា​គឺ​ដូចគ្នា​បេះបិទ ហើយ​ភាពខុសគ្នា​នៃ​ចំនួន​ខ្សែ​គឺ​គ្មាន​ន័យ​អ្វី​ទាំងអស់​។ ទោះជាយ៉ាងណា ដូចដែលវាបានប្រែក្លាយនៅពេលក្រោយ នេះមិនមែនដូច្នោះទេ! ខ្ញុំបានជ្រើសរើសឧបករណ៍ដែលមានខ្សែពីរ វាត្រូវបានបំពាក់ដោយ 12V ។ លក្ខណៈពិសេសការរចនាខ្សែប្រាំខ្សែកំណត់ការប្តូរដើម្បីគ្រប់គ្រងចលនានៃដងថ្លឹង។ ខ្ញុំ​ដឹង​ថា​ខ្ញុំ​ទិញ​ខុស​តែ​ពេល​យក​វា​ដាច់ ហើយ​វា​យឺត​ពេល​ក្នុង​ការ​ដូរ​វា​ហើយ។ ការដាច់រលាត់នៃដងថ្លឹងប្រែជាខ្លីពេកក្នុងការដកដង្កៀបចេញបានត្រឹមត្រូវ ដូច្នេះហើយ ចាំបាច់ត្រូវកែប្រែវាបន្តិច ពោលគឺត្រូវដកឧបករណ៍លាងជ័រកៅស៊ូចំនួនពីរដែលកាត់បន្ថយការដាច់សរសៃឈាមខួរក្បាលរបស់ដងថ្លឹង។ ដើម្បីធ្វើដូច្នេះបាន សាកសពត្រូវកាត់តាមប្រវែងដោយម៉ាស៊ីនបោកគក់ធម្មតា ព្រោះម៉ាស៊ីនបោកគក់ទីពីរនៅខាងក្នុង។ កាសែតអគ្គិសនីពណ៌ខៀវដូចដែលតែងតែជួយយើងនៅពេលអនាគតនៅពេលដំឡើងវាត្រឡប់មកវិញ។

ដើម្បីគ្រប់គ្រងម៉ូទ័រ actuator យើងបានប្រើកម្មវិធីបញ្ជាម៉ូទ័រ L293D ដែលអាចទប់ទល់នឹងបន្ទុកខ្ពស់បំផុតរហូតដល់ 1200 mA នៅពេលយើងបញ្ឈប់ម៉ូទ័រ actuator បន្ទុកខ្ពស់បំផុតបានកើនឡើងត្រឹមតែ 600 mA ។

ទំនាក់ទំនងពីក្តារចុច ឧបករណ៍បំពងសម្លេង និង LEDs ពីរត្រូវបានដកចេញពីផ្ទាំងបញ្ជាការជូនដំណឹងសុវត្ថិភាព។ ឧបករណ៍បញ្ជាពីចម្ងាយ និងឧបករណ៍សំខាន់ត្រូវបានគេសន្មត់ថាត្រូវបានភ្ជាប់ដោយប្រើឧបករណ៍ភ្ជាប់ twisted pair និង RJ45

ការសរសេរកម្មវិធី។

ដូច្នេះខ្ញុំមិនមានបទពិសោធន៍ក្នុងការសរសេរកម្មវិធី Arduino រហូតមកដល់ពេលនេះ។ ខ្ញុំបានប្រើការងារ និងអត្ថបទរបស់អ្នកដទៃពីគេហទំព័រ arduino.cc ។ អ្នកណាចាប់អារម្មណ៍អាចមើលកូដអាក្រក់នេះ :)

រូបថត និងវីដេអូ

វាបានកើតឡើងដូច្នេះថានៅកន្លែងធ្វើការយើងបានសម្រេចចិត្តដំឡើងសោរួមបញ្ចូលគ្នានៅលើទ្វាររបស់យើងព្រោះយើងរត់ចូលជានិច្ច - យើងរត់ចេញពីការិយាល័យទ្វារដែលគួរតែត្រូវបានបិទជានិច្ចក្នុងករណីដែលគ្មានអ្នកកាន់កាប់។ គ្រាប់ចុចច្រើនតែភ្លេចនៅខាងក្នុង។ ជាទូទៅ យើងបានសម្រេចចិត្តថាការចាក់សោរួមបញ្ចូលគ្នាគឺជាដំណោះស្រាយដ៏ល្អ។

ដោយ​បាន​រអ៊ូរទាំ​តាម​ទីផ្សារ​ចៃឆ្កេ និង ebay របស់​ចិន ខ្ញុំ​មិន​បាន​រក​ឃើញ​អ្វី​ដែល​ថោក និង​ធ្ងន់ធ្ងរ​ជាង​នេះ​ទេ ហើយ​បាន​សម្រេច​ចិត្ត​បង្កើត​វា​ដោយ​ខ្លួន​ឯង។ ខ្ញុំនឹងនិយាយភ្លាមៗថាវេទិកា Arduino ត្រូវបានជ្រើសរើសសម្រាប់ភាពសាមញ្ញរបស់វា ដោយសារខ្ញុំមិនមានបទពិសោធន៍ជាមួយ microcontrollers ទាល់តែសោះ។

គំនិត

នៅខាងក្រៅទ្វារគួរតែមានក្តារចុចដែលពាក្យសម្ងាត់ត្រូវបានបញ្ចូលហើយរចនាសម្ព័ន្ធដែលនៅសល់ត្រូវបានជួសជុលនៅខាងក្នុង។ កុងតាក់ Reed ត្រូវបានប្រើដើម្បីគ្រប់គ្រងការបិទទ្វារពេញលេញ។ នៅពេលចេញពីការិយាល័យ មនុស្សម្នាក់ចុច “*” នៅលើក្តារចុច ហើយដោយមិនរង់ចាំទ្វារបិទជិតនោះ ធ្វើអាជីវកម្មរបស់គាត់ នៅពេលដែលទ្វារបិទទាំងស្រុង កុងតាក់ Reed នឹងបិទ ហើយសោនឹងបិទ។ . ទ្វារបើកដោយបញ្ចូលលេខសម្ងាត់ 4 ខ្ទង់ ហើយចុច "#" ។

គ្រឿងបន្លាស់

Arduino UNO = 18 ដុល្លារ
Arduino protoshield + breadboard = $6
L293D = ១ ដុល្លារ
កញ្ចប់ខ្សែ 30pcs សម្រាប់ Bradboard = $4
2 រន្ធ RJ45 = $4
ឌុយ RJ45 ចំនួន 2 = 0.5 ដុល្លារ
ឧបករណ៍ចាក់សោកណ្តាល = 250 ជូត។
Reed switch = រហែកដោយសេរីពីបង្អួចចាស់។
បន្ទះដែកយក្ស = ឥតគិតថ្លៃ
លំនៅដ្ឋានពីមជ្ឈមណ្ឌល D-LINK ចាស់ធ្វើពីដែកមួយមិល្លីម៉ែត្រកន្លះ = ឥតគិតថ្លៃ
ការផ្គត់ផ្គង់ថាមពលពីមជ្ឈមណ្ឌល D-LINK ដូចគ្នាសម្រាប់ 12 និង 5V = ឥតគិតថ្លៃផងដែរ។
វីសនិងគ្រាប់សម្រាប់ភ្ជាប់វត្ថុទាំងអស់នេះទៅនឹងរាងកាយ = 100 រូប្លិ៍។
ផ្ទាំងបញ្ជាការជូនដំណឹងសុវត្ថិភាព = ឥតគិតថ្លៃ។

សរុប៖$ 33.5 និង 350 ជូត។

មិន​តិច​ទេ​អ្នក​នឹង​និយាយ​ហើយ​អ្នក​ប្រាកដ​ជា​ត្រូវ​ប៉ុន្តែ​អ្នក​ត្រូវ​ចំណាយ​សម្រាប់​ការ​សប្បាយ​! ហើយវាតែងតែល្អក្នុងការប្រមូលផ្តុំអ្វីមួយដោយដៃរបស់អ្នកផ្ទាល់។ លើសពីនេះទៀតការរចនាអាចត្រូវបានកាត់បន្ថយយ៉ាងខ្លាំងនៅក្នុងការចំណាយប្រសិនបើអ្នកប្រើ MK ទទេដោយគ្មាន Arduino ។

កំពុងរៀបចំសម្រាប់ការជួបប្រជុំគ្នា។

ខ្ញុំចង់និយាយពាក្យពីរបីអំពីការទិញធាតុសំខាន់នៃការរចនា actuator ។ ហាង​លក់​រថយន្ត​ក្នុង​ស្រុក​មួយ​បាន​ផ្តល់​ឱ្យ​ខ្ញុំ​នូវ​ឧបករណ៍​បញ្ឆេះ​ពីរ​ប្រភេទ៖ “មាន​ខ្សែ​ពីរ និង​មាន​ប្រាំ”។ បើ​តាម​ស្ត្រី​លក់​វិញ ពួកវា​គឺ​ដូចគ្នា​បេះបិទ ហើយ​ភាពខុសគ្នា​នៃ​ចំនួន​ខ្សែ​គឺ​គ្មាន​ន័យ​អ្វី​ទាំងអស់​។ ទោះជាយ៉ាងណា ដូចដែលវាបានប្រែក្លាយនៅពេលក្រោយ នេះមិនមែនដូច្នោះទេ! ខ្ញុំបានជ្រើសរើសឧបករណ៍ដែលមានខ្សែពីរ វាត្រូវបានបំពាក់ដោយ 12V ។ លក្ខណៈពិសេសការរចនាខ្សែប្រាំខ្សែកំណត់ការប្តូរដើម្បីគ្រប់គ្រងចលនានៃដងថ្លឹង។ ខ្ញុំ​ដឹង​ថា​ខ្ញុំ​ទិញ​ខុស​តែ​ពេល​យក​វា​ដាច់ ហើយ​វា​យឺត​ពេល​ក្នុង​ការ​ដូរ​វា​ហើយ។ ការដាច់រលាត់នៃដងថ្លឹងប្រែជាខ្លីពេកក្នុងការដកដង្កៀបចេញបានត្រឹមត្រូវ ដូច្នេះហើយ ចាំបាច់ត្រូវកែប្រែវាបន្តិច ពោលគឺត្រូវដកឧបករណ៍លាងជ័រកៅស៊ូចំនួនពីរដែលកាត់បន្ថយការដាច់សរសៃឈាមខួរក្បាលរបស់ដងថ្លឹង។ ដើម្បីធ្វើដូច្នេះបាន សាកសពត្រូវកាត់តាមប្រវែងដោយម៉ាស៊ីនបោកគក់ធម្មតា ព្រោះម៉ាស៊ីនបោកគក់ទីពីរនៅខាងក្នុង។ កាសែតអគ្គិសនីពណ៌ខៀវដូចដែលតែងតែជួយយើងនៅពេលអនាគតនៅពេលដំឡើងវាត្រឡប់មកវិញ។
ដើម្បីគ្រប់គ្រងម៉ូទ័រ actuator យើងបានប្រើកម្មវិធីបញ្ជាម៉ូទ័រ L293D ដែលអាចទប់ទល់នឹងបន្ទុកខ្ពស់បំផុតរហូតដល់ 1200 mA នៅពេលយើងបញ្ឈប់ម៉ូទ័រ actuator បន្ទុកខ្ពស់បំផុតបានកើនឡើងត្រឹមតែ 600 mA ។
ទំនាក់ទំនងពីក្តារចុច ឧបករណ៍បំពងសម្លេង និង LEDs ពីរត្រូវបានដកចេញពីផ្ទាំងបញ្ជាការជូនដំណឹងសុវត្ថិភាព។ ឧបករណ៍បញ្ជាពីចម្ងាយ និងឧបករណ៍សំខាន់ត្រូវបានគេសន្មត់ថាត្រូវបានភ្ជាប់ដោយប្រើឧបករណ៍ភ្ជាប់ twisted pair និង RJ45

ការសរសេរកម្មវិធី។

ដូច្នេះខ្ញុំមិនមានបទពិសោធន៍ក្នុងការសរសេរកម្មវិធី Arduino រហូតមកដល់ពេលនេះ។ ខ្ញុំបានប្រើការងារ និងអត្ថបទរបស់អ្នកដទៃពីគេហទំព័រ arduino.cc ។ អ្នកណាចាប់អារម្មណ៍អាចមើលកូដអាក្រក់នេះ :)

រូបថត និងវីដេអូ



Arduino និង actuator


ឯកតាថាមពល


ក្ដារចុច


Espagnolette (ភ្ជាប់ជាមួយ actuator ដោយប្រើដែកនិយាយ និងគ្របដោយកំដៅដើម្បីភាពស្រស់ស្អាត)

វីដេអូនៃដំណើរការប្រតិបត្តិការឧបករណ៍៖

មេរៀនថ្ងៃនេះគឺអំពីរបៀបប្រើឧបករណ៍អាន RFID ជាមួយ Arduino ដើម្បីបង្កើតប្រព័ន្ធចាក់សោសាមញ្ញ, នៅក្នុងពាក្យសាមញ្ញ- ចាក់សោ RFID ។

RFID (ការកំណត់អត្តសញ្ញាណប្រេកង់វិទ្យុជាភាសាអង់គ្លេស ការកំណត់អត្តសញ្ញាណប្រេកង់វិទ្យុ) គឺជាវិធីសាស្រ្តនៃការកំណត់អត្តសញ្ញាណដោយស្វ័យប្រវត្តិនៃវត្ថុដែលទិន្នន័យដែលបានរក្សាទុកនៅក្នុងអ្វីដែលគេហៅថាឧបករណ៍បញ្ជូនសញ្ញា ឬស្លាក RFID ត្រូវបានអាន ឬសរសេរដោយប្រើសញ្ញាវិទ្យុ។ ប្រព័ន្ធ RFID ណាមួយមានឧបករណ៍អាន (អ្នកអាន អ្នកអាន ឬអ្នកសួរចម្លើយ) និងឧបករណ៍បញ្ជូន (ត្រូវបានគេស្គាល់ថាជាស្លាក RFID ជួនកាលពាក្យថា RFID ស្លាកក៏ត្រូវបានគេប្រើផងដែរ) ។

ការបង្រៀននេះនឹងប្រើស្លាក RFID ជាមួយ Arduino ។ ឧបករណ៍អានឧបករណ៍កំណត់អត្តសញ្ញាណតែមួយគត់ (UID) នៃស្លាក RFID នីមួយៗដែលយើងដាក់នៅជាប់អ្នកអាន ហើយបង្ហាញវានៅលើអេក្រង់ OLED ។ ប្រសិនបើ UID នៃស្លាកគឺស្មើនឹងតម្លៃដែលបានកំណត់ទុកជាមុនដែលត្រូវបានរក្សាទុកក្នុងអង្គចងចាំ Arduino នោះយើងនឹងឃើញសារ "ដោះសោ" នៅលើការបង្ហាញ។ ប្រសិនបើលេខសម្គាល់តែមួយគត់មិនស្មើនឹងតម្លៃដែលបានកំណត់ជាមុន សារ "ដោះសោ" នឹងមិនបង្ហាញទេ - មើលរូបថតខាងក្រោម។

ប្រាសាទត្រូវបានបិទ

សោរបើក

ផ្នែកដែលត្រូវការដើម្បីបង្កើតគម្រោងនេះ៖

  • ឧបករណ៍អាន RFID RC522
  • អេក្រង់ OLED
  • ក្រុមប្រឹក្សាអភិវឌ្ឍន៍
  • ខ្សភ្លើង

ព័ត៌មានលម្អិតបន្ថែម៖

  • ថ្ម (powerbank)

ការចំណាយសរុបនៃធាតុផ្សំនៃគម្រោងគឺប្រហែល 15 ដុល្លារ។

ជំហានទី 2: ឧបករណ៍អាន RFID RC522

ស្លាក RFID នីមួយៗមានបន្ទះឈីបតូចមួយ (កាតពណ៌សបង្ហាញក្នុងរូបថត) ។ ប្រសិនបើអ្នកចាំងពិលនៅលើកាត RFID នេះ អ្នកអាចមើលឃើញបន្ទះសៀគ្វីតូច និងឧបករណ៏ដែលព័ទ្ធជុំវិញវា។ បន្ទះឈីបនេះមិនមានថ្មដើម្បីបង្កើតថាមពលទេ។ វាទទួលថាមពលពីអ្នកអានដោយឥតខ្សែដោយប្រើឧបករណ៏ដ៏ធំនេះ។ វាអាចទៅរួចក្នុងការអានកាត RFID ដូចនេះពីចម្ងាយរហូតដល់ 20mm ។

បន្ទះឈីបដូចគ្នានេះក៏មាននៅក្នុងស្លាក fob key RFID ផងដែរ។

ស្លាក RFID នីមួយៗមានលេខតែមួយគត់ដែលកំណត់អត្តសញ្ញាណវា។ នេះគឺជា UID ដែលត្រូវបានបង្ហាញនៅលើអេក្រង់ OLED ។ លើកលែងតែ UID នេះ ស្លាកនីមួយៗអាចផ្ទុកទិន្នន័យបាន។ កាតប្រភេទនេះអាចផ្ទុកទិន្នន័យរហូតដល់ 1 ពាន់។ គួរអោយចាប់អារម្មណ៍មែនអត់? មុខងារនេះនឹងមិនត្រូវបានប្រើនៅថ្ងៃនេះទេ។ សព្វថ្ងៃនេះ អ្វីដែលគួរឱ្យចាប់អារម្មណ៍គឺការកំណត់អត្តសញ្ញាណប័ណ្ណជាក់លាក់មួយដោយ UID របស់វា។ តម្លៃនៃឧបករណ៍អាន RFID និងកាត RFID ទាំងពីរនេះគឺប្រហែល 4 ដុល្លារ។

ជំហានទី 3: អេក្រង់ OLED

មេរៀនប្រើប្រាស់ម៉ូនីទ័រ OLED ទំហំ 0.96" 128x64 I2C ។

នេះ​ជា​ការ​បង្ហាញ​ដ៏​ល្អ​សម្រាប់​ប្រើ​ជាមួយ Arduino ។ នេះគឺជាអេក្រង់ OLED ហើយមានន័យថាវាមានការប្រើប្រាស់ថាមពលតិច។ ការប្រើប្រាស់ថាមពលនៃអេក្រង់នេះគឺប្រហែល 10-20mA ហើយវាអាស្រ័យលើចំនួនភីកសែល។

អេក្រង់មានកម្រិតភាពច្បាស់ 128 x 64 ភិចសែល និងមានទំហំតូច។ មានជម្រើសបង្ហាញពីរ។ មួយ​ក្នុង​ចំណោម​ពួក​វា​គឺ​ជា​ពណ៌​ឯកតា ហើយ​មួយ​ទៀត​ដូច​ជា​មួយ​ដែល​បាន​ប្រើ​ក្នុង​មេរៀន អាច​បង្ហាញ​ពណ៌​ពីរ​គឺ​លឿង និង​ខៀវ។ ផ្នែកខាងលើនៃអេក្រង់អាចមានពណ៌លឿង ហើយផ្នែកខាងក្រោមអាចមានពណ៌ខៀវប៉ុណ្ណោះ។

អេក្រង់ OLED នេះភ្លឺខ្លាំង ហើយមានបណ្ណាល័យដ៏អស្ចារ្យ និងស្រស់ស្អាតដែល Adafruit បានបង្កើតសម្រាប់អេក្រង់នេះ។ បន្ថែមពីលើនេះ ការបង្ហាញប្រើចំណុចប្រទាក់ I2C ដូច្នេះការភ្ជាប់ទៅ Arduino គឺងាយស្រួលមិនគួរឱ្យជឿ។

អ្នកគ្រាន់តែត្រូវភ្ជាប់ខ្សែពីរប៉ុណ្ណោះ លើកលែងតែ Vcc និង GND។ ប្រសិនបើអ្នកទើបតែប្រើ Arduino ហើយចង់ប្រើការបង្ហាញដែលមានតំលៃថោក និងសាមញ្ញនៅក្នុងគម្រោងរបស់អ្នក សូមចាប់ផ្តើមនៅទីនេះ។

ជំហានទី 4: ភ្ជាប់ផ្នែកទាំងអស់។

វឌ្ឍនភាពមិននៅស្ងៀមទេ ហើយ "សោរឆ្លាតវៃ" កាន់តែលេចឡើងនៅលើទ្វារផ្ទះល្វែង យានដ្ឋាន និងផ្ទះ។

ការចាក់សោស្រដៀងគ្នានឹងបើកនៅពេលអ្នកចុចប៊ូតុងនៅលើស្មាតហ្វូនរបស់អ្នក។ ជាសំណាងល្អ ស្មាតហ្វូន និងថេប្លេតបានចូលក្នុងជីវិតប្រចាំថ្ងៃរបស់យើងរួចហើយ។ ក្នុងករណីខ្លះ "សោរឆ្លាតវៃ" ត្រូវបានភ្ជាប់ទៅ "សេវាកម្មពពក" ដូចជា Google Drive ហើយបានបើកពីចម្ងាយ។ លើសពីនេះទៀតជម្រើសនេះធ្វើឱ្យវាអាចធ្វើទៅបានដើម្បីផ្តល់សិទ្ធិក្នុងការបើកទ្វារដល់មនុស្សផ្សេងទៀត។

គម្រោងនេះនឹងអនុវត្តកំណែ DIY នៃសោឆ្លាតវៃនៅលើ Arduino ដែលអាចបញ្ជាពីចម្ងាយពីគ្រប់ទីកន្លែងក្នុងពិភពលោក។

លើសពីនេះ គម្រោងនេះបានបន្ថែមសមត្ថភាពក្នុងការបើកសោ បន្ទាប់ពីកំណត់អត្តសញ្ញាណស្នាមម្រាមដៃ។ ចំពោះគោលបំណងនេះ ឧបករណ៍ចាប់សញ្ញាស្នាមម្រាមដៃនឹងត្រូវបានរួមបញ្ចូល។ ជម្រើសបើកទ្វារទាំងពីរនឹងត្រូវបានដំណើរការដោយវេទិកា Adafruit IO ។

ការចាក់សោបែបនេះអាចជាជំហានដំបូងដ៏អស្ចារ្យនៅក្នុងគម្រោង Smart Home របស់អ្នក។

ការដំឡើងឧបករណ៍ចាប់សញ្ញាស្នាមម្រាមដៃ

ដើម្បីធ្វើការជាមួយឧបករណ៍ចាប់សញ្ញាស្នាមម្រាមដៃ មានបណ្ណាល័យដ៏ល្អសម្រាប់ Arduino ដែលជួយសម្រួលដល់ដំណើរការរៀបចំឧបករណ៍ចាប់សញ្ញា។ គម្រោងនេះប្រើ Arduino Uno ។ បន្ទះ Adafruit CC3000 ត្រូវបានប្រើដើម្បីភ្ជាប់ទៅអ៊ីនធឺណិត។

តោះចាប់ផ្តើមជាមួយការភ្ជាប់ថាមពល៖

  • ភ្ជាប់ម្ជុល 5V ពីបន្ទះ Arduino ទៅផ្លូវដែកថាមពលក្រហម។
  • ម្ជុល GND ពី Arduino ភ្ជាប់ទៅផ្លូវដែកពណ៌ខៀវនៅលើបន្ទះសៀគ្វីដែលគ្មានជាតិដែក។

ចូរបន្តទៅការភ្ជាប់ឧបករណ៍ចាប់សញ្ញាស្នាមម្រាមដៃ៖

  • ដំបូងភ្ជាប់ថាមពល។ ដើម្បីធ្វើដូចនេះខ្សែពណ៌ក្រហមត្រូវបានភ្ជាប់ទៅផ្លូវដែក +5 V ហើយខ្សែខ្មៅទៅផ្លូវដែក GND;
  • ខ្សែពណ៌សនៃឧបករណ៏ភ្ជាប់ទៅ pin 4 នៅលើ Arduino ។
  • ខ្សែពណ៌បៃតងទៅ pin 3 នៅលើ microcontroller ។

ឥឡូវនេះសូមបន្តទៅម៉ូឌុល CC3000៖

  • យើងភ្ជាប់ IRQ pin ពីបន្ទះ CC3000 ទៅ pin 2 នៅលើ Arduino ។
  • VBAT - ម្ជុល 5 ។
  • CS - ដើម្បី pin 10 ។
  • បន្ទាប់ពីនេះ អ្នកត្រូវភ្ជាប់ម្ជុល SPI ទៅ Arduino: MOSI, MISO និង CLK - ទៅ pins 11, 12 និង 13 រៀងគ្នា។

ជាការប្រសើរណាស់, នៅចុងបញ្ចប់អ្នកត្រូវផ្តល់ថាមពល: Vin - ទៅ Arduino 5V (ផ្លូវដែកក្រហមនៅលើបន្ទះសៀគ្វីរបស់អ្នក) និង GND ទៅ GND (ផ្លូវរថភ្លើងពណ៌ខៀវនៅលើក្តារបន្ទះ) ។

រូបថតនៃគម្រោងដែលបានផ្គុំយ៉ាងពេញលេញត្រូវបានបង្ហាញខាងក្រោម៖

មុនពេលបង្កើតគំនូរព្រាងដែលនឹងផ្ទុកទិន្នន័យនៅលើ Adafruit IO អ្នកត្រូវផ្ទេរទិន្នន័យអំពីស្នាមម្រាមដៃរបស់អ្នកទៅឧបករណ៍ចាប់សញ្ញា។ បើមិនដូច្នេះទេ គាត់នឹងមិនទទួលស្គាល់អ្នកនៅថ្ងៃអនាគតទេ ;) យើងសូមណែនាំឱ្យធ្វើក្រិតឧបករណ៍ចាប់ស្នាមម្រាមដៃដោយប្រើ Arduino ដាច់ដោយឡែក។ ប្រសិនបើនេះជាលើកដំបូងរបស់អ្នកដែលធ្វើការជាមួយឧបករណ៍ចាប់សញ្ញានេះ យើងសូមណែនាំឱ្យអ្នកស្គាល់ខ្លួនអ្នកជាមួយនឹងដំណើរការក្រិតតាមខ្នាត និងការណែនាំលម្អិតសម្រាប់ធ្វើការជាមួយឧបករណ៍ចាប់សញ្ញាស្នាមម្រាមដៃ។

ប្រសិនបើអ្នកមិនទាន់បានធ្វើវាទេ សូមបង្កើតគណនីជាមួយ Adafruit IO។

បន្ទាប់ពីនេះ យើងអាចបន្តទៅដំណាក់កាលបន្ទាប់នៃការបង្កើត "សោរឆ្លាតវៃ" នៅលើ Arduino៖ ពោលគឺ ការបង្កើតគំនូរព្រាងដែលនឹងបញ្ជូនទិន្នន័យទៅ Adafruit IO ។ ដោយសារកម្មវិធីនេះមានពន្លឺខ្លាំងក្នុងអត្ថបទនេះ យើងនឹងគូសបញ្ជាក់ និងពិចារណាតែផ្នែកសំខាន់ៗរបស់វា ហើយបន្ទាប់មកយើងនឹងផ្តល់នូវតំណភ្ជាប់ទៅកាន់ GitHub ដែលអ្នកអាចទាញយកគំនូរព្រាងពេញបាន។

គំនូរព្រាងចាប់ផ្តើមដោយផ្ទុកបណ្ណាល័យចាំបាច់ទាំងអស់៖

# រួមបញ្ចូល

# រួមបញ្ចូល

# រួមបញ្ចូល

# រួមបញ្ចូល "Adafruit_MQTT.h"

#រួមបញ្ចូល "Adafruit_MQTT_CC3000.h"

# រួមបញ្ចូល

# រួមបញ្ចូល >

បន្ទាប់ពីនេះ អ្នកត្រូវកែតម្រូវគំនូរព្រាងបន្តិច ដោយបញ្ចូលប៉ារ៉ាម៉ែត្រនៃបណ្តាញ WiFi របស់អ្នក ដោយបញ្ជាក់ SSID និងពាក្យសម្ងាត់៖

#កំណត់ WLAN_SECURITY WLAN_SEC_WPA2>

លើសពីនេះទៀត អ្នកត្រូវតែបញ្ចូលឈ្មោះ និងសោ AIO របស់អ្នក ដើម្បីចូលទៅក្នុងគណនី Adafruit IO របស់អ្នក៖

#កំណត់ AIO_SERVERPORT 1883

#កំណត់ AIO_USERNAME "adafruit_io_name"

#define AIO_KEY "adafruit_io_key">

បន្ទាត់ខាងក្រោមទទួលខុសត្រូវចំពោះអន្តរកម្ម និងដំណើរការទិន្នន័យពីឧបករណ៍ចាប់ស្នាមម្រាមដៃ។ ប្រសិនបើឧបករណ៍ចាប់សញ្ញាត្រូវបានធ្វើឱ្យសកម្ម (ស្នាមម្រាមដៃត្រូវគ្នា) វានឹងមាន "1"៖

const char FINGERPRINT_FEED PROGMEM = AIO_USERNAME "/feeds/fingerprint";

Adafruit_MQTT_បោះពុម្ពស្នាមម្រាមដៃ = Adafruit_MQTT_Publish(&mqtt, FINGERPRINT_FEED);

លើសពីនេះទៀត យើងត្រូវបង្កើតវត្ថុ SoftwareSerial សម្រាប់ឧបករណ៍ចាប់សញ្ញារបស់យើង៖

SoftwareSerial mySerial(3, 4);

បន្ទាប់ពីនេះ យើងអាចបង្កើតវត្ថុមួយសម្រាប់ឧបករណ៍ចាប់សញ្ញារបស់យើង៖

Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

នៅខាងក្នុងគំនូរព្រាង យើងបង្ហាញថាតើ fingerID មួយណាគួរតែធ្វើឱ្យសោរសកម្មនាពេលអនាគត។ ឧទាហរណ៍នេះប្រើលេខ 0 ដែលត្រូវនឹងលេខសម្គាល់នៃស្នាមម្រាមដៃដំបូងដែលប្រើដោយឧបករណ៍ចាប់សញ្ញា៖

int fingerID = 0;

បន្ទាប់ពីនេះ យើងចាប់ផ្តើមបញ្ជរ និងពន្យារពេលក្នុងគម្រោងរបស់យើង។ សំខាន់យើងចង់ឱ្យសោចូលដោយស្វ័យប្រវត្តិនៅពេលបើក។ ឧទាហរណ៍នេះប្រើការពន្យាពេល 10 វិនាទី ប៉ុន្តែអ្នកអាចកែតម្រូវតម្លៃនេះឱ្យសមនឹងតម្រូវការរបស់អ្នក៖

int activationCounter = 0;

int LastActivation = 0;

int activationTime = 10 * 1000;

នៅក្នុងតួនៃមុខងារ setup() យើងចាប់ផ្តើមឧបករណ៏ស្នាមម្រាមដៃ ហើយធានាថាបន្ទះឈីប CC3000 ត្រូវបានភ្ជាប់ទៅបណ្តាញ WiFi របស់អ្នក។

នៅក្នុងតួនៃមុខងារ loop() យើងភ្ជាប់ទៅ Adafruit IO ។ បន្ទាត់ខាងក្រោមទទួលខុសត្រូវចំពោះបញ្ហានេះ៖

បន្ទាប់ពីភ្ជាប់ទៅវេទិកា Adafruit IO យើងពិនិត្យមើលស្នាមម្រាមដៃចុងក្រោយ។ ប្រសិនបើវាត្រូវគ្នា ហើយសោមិនត្រូវបានដំណើរការទេ យើងផ្ញើ "1" ទៅ Adafruit IO ដើម្បីដំណើរការ៖

ប្រសិនបើ (fingerprintID == fingerID && lockState == មិនពិត) (

Serial.println(F("ការចូលប្រើដែលបានផ្តល់!"));

lockState = ពិត;

Serial.println(F("បរាជ័យ"));

Serial.println(F("យល់ព្រម!"));

LastActivation = មីលីស();

ប្រសិនបើនៅក្នុងមុខងារ loop() ការចាក់សោត្រូវបានធ្វើឱ្យសកម្ម ហើយយើងបានឈានដល់តម្លៃពន្យារពេលដែលបានចង្អុលបង្ហាញខាងលើ យើងផ្ញើ "0"៖

ប្រសិនបើ ((activationCounter - LastActivation > activationTime) && lockState == true) (

lockState = មិនពិត;

ប្រសិនបើ (! fingerprint.publish(state)) (

Serial.println(F("បរាជ័យ"));

Serial.println(F("យល់ព្រម!"));

អ្នកអាចទាញយកកំណែចុងក្រោយបំផុតនៃកូដនៅលើ GitHub ។

ដល់ពេលសាកល្បងគម្រោងរបស់យើងហើយ! កុំភ្លេចទាញយក និងដំឡើងបណ្ណាល័យចាំបាច់ទាំងអស់សម្រាប់ Arduino!

ត្រូវប្រាកដថាអ្នកបានធ្វើការផ្លាស់ប្តូរចាំបាច់ទាំងអស់ចំពោះគំនូរព្រាង ហើយបង្ហោះវាទៅក្នុង Arduino របស់អ្នក។ បន្ទាប់ពីនោះសូមបើកបង្អួច Serial Monitor ។

នៅពេលដែល Arduino ភ្ជាប់ទៅបណ្តាញ WiFi ឧបករណ៍ចាប់សញ្ញាស្នាមម្រាមដៃនឹងចាប់ផ្តើមបញ្ចេញពន្លឺពណ៌ក្រហម។ ដាក់ម្រាមដៃរបស់អ្នកនៅលើឧបករណ៍ចាប់សញ្ញា។ លេខសម្គាល់គួរតែត្រូវបានបង្ហាញនៅក្នុងបង្អួចម៉ូនីទ័រសៀរៀល។ ប្រសិនបើវាត្រូវគ្នា សារ "យល់ព្រម!" នេះមានន័យថាទិន្នន័យត្រូវបានបញ្ជូនទៅម៉ាស៊ីនមេ Adafruit IO ។

ដ្យាក្រាមនិងគំនូរព្រាងសម្រាប់ការកំណត់រចនាសម្ព័ន្ធបន្ថែមទៀតនៃសោដោយប្រើឧទាហរណ៍ LED

ឥឡូវនេះ ចូរយើងដោះស្រាយជាមួយនឹងផ្នែកនោះនៃគម្រោងដែលទទួលខុសត្រូវដោយផ្ទាល់សម្រាប់ការគ្រប់គ្រង សោទ្វារ. ដើម្បីភ្ជាប់ទៅបណ្តាញឥតខ្សែ និងបើក/បិទសោ អ្នកនឹងត្រូវការម៉ូឌុល Adafruit ESP8266 បន្ថែម (ម៉ូឌុល ESP8266 មិនចាំបាច់មកពី Adafruit ទេ)។ ដោយប្រើឧទាហរណ៍ខាងក្រោម អ្នកអាចវាយតម្លៃថាតើវាមានភាពងាយស្រួលក្នុងការផ្លាស់ប្តូរទិន្នន័យរវាងវេទិកាពីរ (Arduino និង ESP8266) ដោយប្រើ Adafruit IO ។

នៅក្នុងផ្នែកនេះយើងនឹងមិនដំណើរការដោយផ្ទាល់ជាមួយសោទេ។ ជំនួសមកវិញ យើងនឹងភ្ជាប់ LED ទៅម្ជុល ដែលសោនឹងត្រូវបានភ្ជាប់នៅពេលក្រោយ។ វា​នឹង​ធ្វើ​ឱ្យ​វា​អាច​សាកល្បង​កូដ​របស់​យើង​ដោយ​មិន​ចាំបាច់​ស្វែង​យល់​ពី​ភាព​ជាក់លាក់​នៃ​ការ​រចនា​សោ។

គ្រោងការណ៍គឺសាមញ្ញណាស់: ដំបូងដំឡើង ESP8266 នៅលើក្តារបន្ទះ។ បន្ទាប់ពីនេះដំឡើង LED ។ កុំភ្លេចថាជើងវែង (វិជ្ជមាន) នៃ LED ត្រូវបានភ្ជាប់តាមរយៈរេស៊ីស្តង់។ ជើងទីពីរនៃរេស៊ីស្តង់ត្រូវបានភ្ជាប់ទៅម្ជុល 5 នៅលើម៉ូឌុល ESP8266 ។ យើងភ្ជាប់ខ្សែទីពីរ (cathode) នៃ LED ទៅម្ជុល GND នៅលើ ESP8266 ។

យ៉ាងពេញលេញ សៀគ្វីប្រមូលផ្តុំបង្ហាញក្នុងរូបថតខាងក្រោម។


ឥឡូវ​នេះ​សូម​មើល​គំនូរ​ព្រាង​ដែល​យើង​កំពុង​ប្រើ​សម្រាប់​គម្រោង​នេះ។ ជាថ្មីម្តងទៀត កូដមានទំហំធំ និងស្មុគស្មាញ ដូច្នេះយើងនឹងមើលតែផ្នែកសំខាន់ៗរបស់វាប៉ុណ្ណោះ៖

យើងចាប់ផ្តើមដោយភ្ជាប់បណ្ណាល័យចាំបាច់៖

# រួមបញ្ចូល

# រួមបញ្ចូល "Adafruit_MQTT.h"

#រួមបញ្ចូល "Adafruit_MQTT_Client.h"

កំណត់ការកំណត់វ៉ាយហ្វាយ៖

#កំណត់ WLAN_SSID "your_wifi_ssid"

#កំណត់ WLAN_PASS "your_wifi_password"

#កំណត់ WLAN_SECURITY WLAN_SEC_WPA2

យើងក៏កំណត់ប៉ារ៉ាម៉ែត្រ Adafruit IO ផងដែរ។ ដូចគ្នានឹងផ្នែកមុនដែរ៖

#កំណត់ AIO_SERVER "io.adafruit.com"

#កំណត់ AIO_SERVERPORT 1883

#កំណត់ AIO_USERNAME "adafruit_io_username"

#កំណត់ AIO_KEY "adafruit_io_key"

យើងចង្អុលបង្ហាញថាតើម្ជុលមួយណាដែលយើងភ្ជាប់ LED (នៅពេលអនាគតវានឹងជាសោរឬបញ្ជូនតរបស់យើង):

int relayPin = 5;

អន្តរកម្មជាមួយឧបករណ៍ចាប់សញ្ញាស្នាមម្រាមដៃ ដូចនៅក្នុងផ្នែកមុន៖

const char LOCK_FEED PROGMEM = AIO_USERNAME "/feeds/lock";

Adafruit_MQTT_Subscribe lock = Adafruit_MQTT_Subscribe(&mqtt, LOCK_FEED);

នៅក្នុងតួនៃមុខងារ setup() យើងបង្ហាញថា pin ដែល LED ត្រូវបានភ្ជាប់គួរតែដំណើរការក្នុងរបៀប OUTPUT៖

pinMode(relayPin, OUTPUT);

នៅក្នុង loop() loop ដំបូងយើងពិនិត្យមើលថាតើយើងភ្ជាប់ទៅ Adafruit IO ដែរឬទេ៖

បន្ទាប់ពីនេះយើងពិនិត្យមើលថាតើសញ្ញាអ្វីត្រូវបានទទួល។ ប្រសិនបើ "1" ត្រូវបានបញ្ជូន នោះយើងដំណើរការម្ជុលដែលយើងបានប្រកាសមុននេះ ដែល LED របស់យើងត្រូវបានភ្ជាប់។ ប្រសិនបើយើងទទួលបាន "0" យើងផ្ទេរទំនាក់ទំនងទៅស្ថានភាព "ទាប"៖

Adafruit_MQTT_Subscribe *ជាវ;

while ((ការជាវ = mqtt.readSubscription(1000))) (

ប្រសិនបើ (ការជាវ == &lock) (

Serial.print(F("Got: "));

Serial.println((char *)lock.lastread);

// រក្សាទុកពាក្យបញ្ជាទៅទិន្នន័យខ្សែអក្សរ

ពាក្យបញ្ជា String = String((char *)lock.lastread);

ប្រសិនបើ (ពាក្យបញ្ជា == "0") (

digitalWrite(relayPin, ទាប);

ប្រសិនបើ (ពាក្យបញ្ជា == "1") (

digitalWrite(relayPin, HIGH);

ស្វែងរក កំណែចុងក្រោយបំផុត។អ្នកអាចទាញយកគំនូរព្រាងនៅលើ GitHub ។

ដល់ពេលសាកល្បងគម្រោងរបស់យើង។ កុំភ្លេចទាញយកបណ្ណាល័យដែលត្រូវការទាំងអស់សម្រាប់ Arduino របស់អ្នក ហើយពិនិត្យមើលថាតើអ្នកបានធ្វើការផ្លាស់ប្តូរត្រឹមត្រូវចំពោះគំនូរព្រាងឬអត់។

ដើម្បីសរសេរកម្មវិធីបន្ទះឈីប ESP8266 អ្នកអាចប្រើឧបករណ៍បំប្លែង USB-FTDI ធម្មតា។

បង្ហោះរូបព្រាងទៅ Arduino ហើយបើកបង្អួច Serial Monitor ។ នៅដំណាក់កាលនេះ យើងគ្រាន់តែពិនិត្យមើលថាតើយើងអាចភ្ជាប់ទៅ Adafruit IO ដែរឬទេ៖ យើងនឹងពិនិត្យមើលមុខងារដែលមានបន្ថែមទៀត។

ការសាកល្បងគម្រោង

ឥឡូវ​នេះ​យើង​ចាប់​ផ្តើ​ម​ការ​ធ្វើ​តេ​ស្ត​! ចូលទៅកាន់ម៉ឺនុយអ្នកប្រើប្រាស់ Adafruit IO របស់អ្នក នៅក្រោមម៉ឺនុយមតិព័ត៌មាន។ ពិនិត្យមើលថាតើស្នាមម្រាមដៃ និងបណ្តាញចាក់សោត្រូវបានបង្កើតឬអត់ (នៅក្នុងអេក្រង់បោះពុម្ពខាងក្រោមទាំងនេះគឺជាស្នាមម្រាមដៃ និងបន្ទាត់ចាក់សោ)៖


ប្រសិនបើពួកវាមិនមានទេ អ្នកនឹងត្រូវបង្កើតពួកវាដោយដៃ។

ឥឡូវនេះ យើងត្រូវធានាឱ្យមានការផ្លាស់ប្តូរទិន្នន័យរវាងស្នាមម្រាមដៃ និងបណ្តាញចាក់សោ។ ឆានែលចាក់សោត្រូវតែយកតម្លៃ "1" នៅពេលដែលឆានែលស្នាមម្រាមដៃយកតម្លៃ "1" និងច្រាសមកវិញ។

សម្រាប់រឿងនេះយើងប្រើខ្លាំងណាស់ ឧបករណ៍ដ៏មានឥទ្ធិពល Adafruit IO: កេះ។ គន្លឹះគឺជាលក្ខខណ្ឌសំខាន់ដែលអ្នកអាចអនុវត្តចំពោះបណ្តាញដែលបានកំណត់រចនាសម្ព័ន្ធ។ នោះគឺពួកវាអាចត្រូវបានប្រើដើម្បីភ្ជាប់បណ្តាញពីរ។

បង្កើតកេះប្រតិកម្មថ្មីពីផ្នែក Triggers នៅក្នុង Adafruit IO ។ វានឹងផ្តល់នូវសមត្ថភាពក្នុងការផ្លាស់ប្តូរទិន្នន័យរវាងឧបករណ៍ចាប់សញ្ញាស្នាមម្រាមដៃ និងបណ្តាញចាក់សោ៖


នេះជាអ្វីដែលវាគួរតែមើលទៅនៅពេលដែលកេះទាំងពីរត្រូវបានកំណត់រចនាសម្ព័ន្ធ៖

ទាំងអស់! ឥឡូវនេះយើងអាចសាកល្បងគម្រោងរបស់យើងបាន! យើងដាក់ម្រាមដៃរបស់យើងនៅលើឧបករណ៍ចាប់សញ្ញា ហើយមើលពីរបៀបដែល Arduino ចាប់ផ្តើមភ្លឺជាមួយនឹង LED ដែលត្រូវនឹងការបញ្ជូនទិន្នន័យ។ បន្ទាប់ពីនេះ LED នៅលើម៉ូឌុល ESP8266 គួរតែចាប់ផ្តើមភ្លឹបភ្លែតៗ។ នេះមានន័យថាវាបានចាប់ផ្តើមទទួលទិន្នន័យតាមរយៈ MQTT ។ LED នៅលើបន្ទះសៀគ្វីក៏គួរតែបើកនៅពេលនេះដែរ។

បន្ទាប់ពីការពន្យាពេលដែលអ្នកកំណត់ក្នុងគំនូរព្រាង (លំនាំដើមគឺ 10 វិនាទី) LED នឹងបិទ។ អបអរសាទរ! អ្នកអាចគ្រប់គ្រង LED ដោយប្រើស្នាមម្រាមដៃរបស់អ្នកពីគ្រប់ទីកន្លែងក្នុងពិភពលោក!

ការដំឡើងសោអេឡិចត្រូនិច

យើងបានឈានដល់ផ្នែកចុងក្រោយនៃគម្រោង៖ ការភ្ជាប់ដោយផ្ទាល់ និងការគ្រប់គ្រង។ សោអេឡិចត្រូនិចដោយប្រើ Arduino និងឧបករណ៍ចាប់ស្នាមម្រាមដៃ។ គម្រោងនេះមិនងាយស្រួលទេអ្នកអាចប្រើប្រភពទាំងអស់នៅក្នុងទម្រង់ដែលពួកគេត្រូវបានបង្ហាញខាងលើប៉ុន្តែភ្ជាប់ឧបករណ៍បញ្ជូនតជំនួសឱ្យ LED ។

ដើម្បីភ្ជាប់សោដោយផ្ទាល់ អ្នកនឹងត្រូវការធាតុផ្សំបន្ថែម៖ ការផ្គត់ផ្គង់ថាមពល 12 V, Jack សម្រាប់ភ្ជាប់ថាមពល, ត្រង់ស៊ីស្ទ័រ (V ក្នុងឧទាហរណ៍នេះ។ IRLB8721PbF MOSFET ត្រូវបានប្រើ ប៉ុន្តែមួយទៀតអាចត្រូវបានប្រើឧទាហរណ៍ ត្រង់ស៊ីស្ទ័រ bipolar TIP102 ។ ប្រសិនបើអ្នកកំពុងប្រើ transistor bipolar អ្នកនឹងត្រូវបន្ថែម resistor ។

បង្ហាញខាងក្រោម ដ្យាក្រាមអគ្គិសនីការភ្ជាប់សមាសធាតុទាំងអស់ទៅម៉ូឌុល ESP8266៖


ចំណាំថាប្រសិនបើអ្នកកំពុងប្រើត្រង់ស៊ីស្ទ័រ MOSFET អ្នកនឹងមិនត្រូវការ resistor រវាង pin 5 នៃម៉ូឌុល ESP8266 និង transistor ទេ។

គម្រោងដែលបានជួបប្រជុំគ្នាពេញលេញត្រូវបានបង្ហាញនៅក្នុងរូបថតខាងក្រោម៖


ផ្តល់ថាមពលដល់ម៉ូឌុល ESP8266 ដោយប្រើម៉ូឌុល FTDI ហើយភ្ជាប់ការផ្គត់ផ្គង់ថាមពល 12V ទៅ Jack ។ ប្រសិនបើអ្នកបានប្រើម្ជុលដែលបានណែនាំខាងលើសម្រាប់ការតភ្ជាប់ អ្នកនឹងមិនចាំបាច់ផ្លាស់ប្តូរអ្វីនៅក្នុងគំនូរព្រាងនោះទេ។

ឥឡូវនេះ អ្នកអាចដាក់ម្រាមដៃរបស់អ្នកនៅលើឧបករណ៍ចាប់សញ្ញា៖ សោគួរតែដំណើរការឆ្លើយតបទៅនឹងស្នាមម្រាមដៃរបស់អ្នក។ វីដេអូខាងក្រោមបង្ហាញពីគម្រោងចាក់សោឆ្លាតវៃដោយស្វ័យប្រវត្តិដែលកំពុងដំណើរការ៖

ការអភិវឌ្ឍន៍បន្ថែមទៀតនៃគម្រោង Smart Lock

ចេញផ្សាយនៅក្នុងគម្រោងរបស់យើង។ ការបញ្ជាពីចម្ងាយចាក់សោទ្វារដោយប្រើស្នាមម្រាមដៃរបស់អ្នក។

មានអារម្មណ៍សេរីក្នុងការពិសោធន៍ កែប្រែគំនូរព្រាង និងការចង។ ឧទាហរណ៍អ្នកអាចជំនួសទ្វារបាន។ សោអេឡិចត្រូនិចនៅលើការបញ្ជូនតដើម្បីគ្រប់គ្រងថាមពលនៃម៉ាស៊ីនបោះពុម្ព 3D របស់អ្នក ឧបាយកល ឬ quadcopter...

អ្នកអាចអភិវឌ្ឍរបស់អ្នក។ ផ្ទះឆ្លាត"។ ឧទាហរណ៍ បើកដំណើរការប្រព័ន្ធធារាសាស្រ្តពីចម្ងាយនៅលើ Arduino ឬបើកភ្លើងនៅក្នុងបន្ទប់... កុំភ្លេចថាអ្នកអាចដំណើរការឧបករណ៍ស្ទើរតែគ្មានដែនកំណត់ក្នុងពេលដំណាលគ្នាដោយប្រើ Adafruit IO ។

ទុកមតិយោបល់ សំណួរ និងចែករំលែករបស់អ្នក។ បទពិសោធន៍ផ្ទាល់ខ្លួនខាងក្រោម។ គំនិត​និង​គម្រោង​ថ្មី​តែង​កើត​ឡើង​ក្នុង​ការ​ពិភាក្សា!

នៅក្នុងមេរៀននេះ យើងនឹងរៀនពីរបៀបធ្វើ ប្រព័ន្ធសាមញ្ញដែលនឹងដោះសោសោដោយប្រើសោអេឡិចត្រូនិច (Tag) ។

នៅពេលអនាគត អ្នកអាចកែលម្អ និងពង្រីកមុខងារ។ ឧទាហរណ៍ បន្ថែមមុខងារ "បន្ថែមសោថ្មី និងយកវាចេញពីអង្គចងចាំ"។ នៅក្នុងករណីមូលដ្ឋាន ចូរយើងពិចារណាឧទាហរណ៍ដ៏សាមញ្ញមួយដែលការកំណត់អត្តសញ្ញាណសោតែមួយគត់ត្រូវបានកំណត់ជាមុននៅក្នុងកូដកម្មវិធី។

នៅក្នុងមេរៀននេះយើងនឹងត្រូវការ៖

ដើម្បីអនុវត្តគម្រោង យើងត្រូវដំឡើងបណ្ណាល័យ៖

2) ឥឡូវអ្នកត្រូវភ្ជាប់ Buzzer ដែលនឹងបន្លឺជាសញ្ញា ប្រសិនបើសោដំណើរការ ហើយសោរបើក ហើយសញ្ញាទីពីរនៅពេលដែលសោរបិទ។

យើងភ្ជាប់ buzzer តាមលំដាប់ដូចខាងក្រោមៈ

អាឌូណូ Buzzer
5V វី.ស៊ី.ស៊ី
GND GND
ម្ជុល 5 អាយអូ

3) ដ្រាយ servo នឹងត្រូវបានប្រើជាយន្តការដោះសោ។ ដ្រាយ servo ណាមួយអាចត្រូវបានជ្រើសរើស អាស្រ័យលើទំហំដែលអ្នកត្រូវការ និងកម្លាំងដែល servo drive បង្កើត។ servo មាន 3 ទំនាក់ទំនង:

អ្នកអាចមើលឃើញកាន់តែច្បាស់ពីរបៀបដែលយើងភ្ជាប់ម៉ូឌុលទាំងអស់នៅក្នុងរូបភាពខាងក្រោម៖

ឥឡូវនេះ ប្រសិនបើអ្វីៗត្រូវបានភ្ជាប់ អ្នកអាចបន្តទៅការសរសេរកម្មវិធីបាន។

គំនូរព្រាង៖

# រួមបញ្ចូល # រួមបញ្ចូល # រួមបញ្ចូល // បណ្ណាល័យ "RFID" ។ #define SS_PIN 10 #define RST_PIN 9 MFRC522 mfrc522(SS_PIN, RST_PIN); មិនចុះហត្ថលេខាយូរ uidDec, uidDecTemp; // ដើម្បីរក្សាទុកលេខស្លាកជាទម្រង់ទសភាគ servo servo; ការដំឡើងចាត់ទុកជាមោឃៈ () ( Serial.begin(9600); Serial.println("កំពុងរង់ចាំកាត..."); SPI.begin(); // ការចាប់ផ្ដើម SPI / Init SPI bus. mfrc522.PCD_Init(); // ការចាប់ផ្ដើម កាត MFRC522 / Init MFRC522 ។ servo.attach(6); servo.write(0); ( return; ) // ជ្រើសរើសស្លាកមួយប្រសិនបើ (! mfrc522.PICC_ReadCardSerial()) (ត្រឡប់; ) uidDec = 0; // បញ្ចូលលេខស៊េរីនៃស្លាកសម្រាប់ (បៃ i = 0;< mfrc522.uid.size; i++) { uidDecTemp = mfrc522.uid.uidByte[i]; uidDec = uidDec * 256 + uidDecTemp; } Serial.println("Card UID: "); Serial.println(uidDec); // Выводим UID метки в консоль. if (uidDec == 3763966293) // Сравниваем Uid метки, если он равен заданому то серва открывает. { tone(5, 200, 500); // Делаем звуковой сигнал, Открытие servo.write(90); // Поворациваем серву на угол 90 градусов(Отпираем какой либо механизм: задвижку, поворациваем ключ и т.д.) delay(3000); // пауза 3 сек и механизм запирается. tone(5, 500, 500); // Делаем звуковой сигнал, Закрытие } servo.write(0); // устанавливаем серву в закрытое сосотояние }

តោះមើលគំនូរព្រាងឱ្យកាន់តែលម្អិត៖

ដើម្បីស្វែងយល់ពី UID នៃកាត (Tag) អ្នកត្រូវសរសេរគំនូរព្រាងនេះចូលទៅក្នុង arduino ប្រមូលផ្តុំសៀគ្វីដែលបានរៀបរាប់ខាងលើ ហើយបើកកុងសូល (ការត្រួតពិនិត្យច្រកសៀរៀល)។ នៅពេលអ្នកប៉ះស្លាក RFID កុងសូលនឹងបង្ហាញលេខ

UID លទ្ធផលត្រូវតែបញ្ចូលក្នុងបន្ទាត់ខាងក្រោម៖

ប្រសិនបើ (uidDec == 3763966293) // ប្រៀបធៀប Uid នៃស្លាកប្រសិនបើវាស្មើនឹងមួយដែលបានផ្តល់ឱ្យនោះ servo drive បើកសន្ទះបិទបើក។

កាតនីមួយៗមានលេខសម្គាល់តែមួយគត់ ហើយមិនធ្វើម្តងទៀតទេ។ ដូច្នេះ នៅពេលអ្នកបង្ហាញកាតដែលអ្នកកំណត់អត្តសញ្ញាណរបស់អ្នកនៅក្នុងកម្មវិធីនោះ ប្រព័ន្ធនឹងបើកការចូលប្រើប្រាស់ដោយប្រើ servo drive។

វីដេអូ៖