ពេលខ្លះវាចាំបាច់ វាស់ចម្ងាយ ហើយសម្រាប់អ្វីដែលអ្នកមានឧបករណ៍ចាប់សញ្ញាជាច្រើន។ យើងបានឧទ្ទិសអត្ថបទរួចហើយដើម្បីនិយាយអំពីក ឧបករណ៏ចំងាយច្បាស់ដូចជា VL52L0X។ ឧបករណ៏នេះគឺជាប្រភេទថូហ្វនិងត្រូវបានផ្អែកលើការវាស់វែងយ៉ាងជាក់លាក់ដោយអរគុណចំពោះឡាស៊ែររបស់វា។ ប៉ុន្តែប្រសិនបើភាពជាក់លាក់មិនសំខាន់សម្រាប់អ្នកហើយអ្នកចង់បានអ្វីមួយដែលអនុញ្ញាតឱ្យអ្នកវាស់ចម្ងាយនៅតម្លៃទាបលទ្ធភាពមួយផ្សេងទៀត អ្នកមានចុងម្រាមដៃរបស់អ្នកគឺ HC-SR04.
នៅក្នុងករណីនៃការ ឧបករណ៍ចាប់សញ្ញាចម្ងាយ HC-SR04 ចម្ងាយត្រូវបានវាស់ដោយអ៊ុលត្រាសោន។ ប្រព័ន្ធនេះគឺស្រដៀងគ្នាទៅនឹងវិធីសាស្ត្រអុបទិកនៃ VL52L0X ។ នោះគឺវាត្រូវបានបញ្ចេញមានលោតហើយវាត្រូវបានទទួលប៉ុន្តែក្នុងករណីនេះជំនួសឱ្យការធ្វើឡាស៊ែរឬអេសអ៊ីវាគឺជាអ៊ុលត្រាសោន។ ប្រសិនបើអ្នកងប់ងល់នឹងគ្រឿងអេឡិចត្រូនិករ៉ូបូតឬអ្នកផលិតអ្នកស្ម័គ្រចិត្តអ្នកអាចប្រើវាសម្រាប់គម្រោង DIY ជាច្រើនដូចជាប្រព័ន្ធរាវរកឧបសគ្គសម្រាប់មនុស្សយន្តឧបករណ៍ចាប់សញ្ញាវត្តមាន។ ល។
លិបិក្រម
តើ HC-SR04 ជាអ្វី?
មែនហើយវាច្បាស់ដូចដែលខ្ញុំបានអត្ថាធិប្បាយរួចហើយនៅក្នុងកថាខណ្ឌមុន។ HC-SR04 គឺជាឧបករណ៏ចម្ងាយដែលមានភាពជាក់លាក់ទាបផ្អែកលើអេកូ។ ជាមួយវាវាអនុញ្ញាតឱ្យវាស់ចម្ងាយតាមរបៀបសាមញ្ញនិងលឿនទោះបីជាតាមគោលការណ៍វាមិនត្រូវបានប្រើជាធម្មតាក៏ដោយ។ ភាគច្រើនវាត្រូវបានគេប្រើជាឧបករណ៍ប្តូរដើម្បីរកឧបសគ្គនិងជៀសវាងវាតាមរយៈយន្តការផ្សេងទៀតដែលទាក់ទងនឹងការឆ្លើយតបរបស់ឧបករណ៍ចាប់សញ្ញា។
រូបរាងរបស់ HC-SR04 គឺប្លែកនិងងាយស្គាល់។ លើសពីនេះទៀតវាគឺជាធាតុដ៏ពេញនិយមមួយនៅក្នុងឧបករណ៍ចាប់ផ្តើម Arduino ហើយចាំបាច់សម្រាប់គម្រោងជាច្រើន។ វាត្រូវបានកំណត់អត្តសញ្ញាណយ៉ាងងាយស្រួលពីព្រោះវាមាន "ភ្នែក" ពីរដែលជាឧបករណ៍អេកូស័រដែលម៉ូឌុលនេះរួមបញ្ចូលគ្នា។ មួយក្នុងចំនោមពួកគេគឺជាអ្នកបញ្ចេញអ៊ុលត្រាសោននិងម្នាក់ទៀតជាអ្នកទទួល។ វាដំណើរការក្នុងប្រេកង់ 40 Khz ដូច្នេះវាមិនអាចមើលឃើញពីមនុស្សទេ។
គោលការណ៍នៃឧបករណ៏ ultrasonic
គោលការណ៍ដែលក្នុងនោះ វាត្រូវបានផ្អែកលើការធ្វើត្រាប់តាមអណ្តូងរ៉ែមួយដែលត្រូវបានប្រើនៅពេលអ្នកបោះដុំថ្មចូលក្នុងអណ្តូងដើម្បីវាស់ជម្រៅរបស់វា។ អ្នកបោះដុំថ្មនិងពេលវេលាដែលវាត្រូវការរយៈពេលប៉ុន្មានដើម្បីឱ្យវាធ្លាក់ដល់បាត។ បន្ទាប់មកអ្នកធ្វើការគណនាល្បឿនសម្រាប់ពេលវេលាកន្លងទៅហើយអ្នកទទួលបានចម្ងាយដែលថ្មបានធ្វើដំណើរ។ ប៉ុន្តែក្នុងករណីនេះឧបករណ៍ចាប់សញ្ញាគឺជាអ្នក។
នៅក្នុង HC-SR04 អ្នកបញ្ចេញនឹងបញ្ចេញអេកូស័រហើយនៅពេលពួកគេលោតចេញនូវវត្ថុឬឧបសគ្គតាមរបៀបដែលពួកគេនឹងត្រូវបានចាប់ដោយអ្នកទទួល។ នេះ សៀគ្វីនឹងធ្វើការគណនាចាំបាច់ អេកូដើម្បីកំណត់ចម្ងាយ។ នេះក៏ប្រហែលជាអ្នកធ្លាប់ស្គាល់ប្រសិនបើអ្នកដឹងពីប្រព័ន្ធដែលសត្វមួយចំនួនដូចជាត្រីដូហ្វីនត្រីបាឡែនឬប្រចៀវប្រើដើម្បីកំណត់ទីតាំងឧបសគ្គសត្វព្រៃជាដើម។
ដោយរាប់ពេលវេលាចាប់តាំងពីជីពចរត្រូវបានបញ្ជូនរហូតដល់ការឆ្លើយតបត្រូវបានទទួលពេលវេលាហើយដូច្នេះចម្ងាយអាចត្រូវបានកំណត់យ៉ាងត្រឹមត្រូវ។ ចងចាំថា [ចន្លោះ = ពេលវេលាល្បឿន] ប៉ុន្តែក្នុងករណី HC-SR04 អ្នកត្រូវបែងចែកបរិមាណនេះដោយ / ២ ចាប់តាំងពីពេលវេលាត្រូវបានវាស់ពីពេលដែលអ៊ុលត្រាសោនចេញមកហើយធ្វើដំណើរឆ្លងកាត់អវកាសរហូតដល់វាប៉ះនឹងឧបសគ្គនិងផ្លូវត្រឡប់មកវិញដូច្នេះវានឹងមានចំនួនប្រហាក់ប្រហែល ពាក់កណ្តាលនេះ ...
Pinout និងសំណុំទិន្នន័យ
អ្នកដឹងរួចហើយថាដើម្បីមើលទិន្នន័យពេញលេញនៃម៉ូដែលដែលអ្នកបានទទួលនោះរឿងដែលល្អបំផុត រកសំណុំទិន្នន័យ បេតុងរបស់ក្រុមហ៊ុនផលិត។ ឧទាហរណ៍នៅទីនេះ សំណុំទិន្នន័យស្ពែមហ្វូនប៉ុន្តែមានឯកសារជាច្រើនទៀតដែលអាចរកបាននៅក្នុងឯកសារ PDF ។ ទោះយ៉ាងណាក៏ដោយនេះគឺជាទិន្នន័យបច្ចេកទេសសំខាន់បំផុតនៃអេជស៊ីអេសអេស ០៤៖
- ខ្ទាស់: ៤ ម្ជុលសម្រាប់ថាមពល (វីស៊ី), កេះ (កេះ) អ្នកទទួល (អេកូ) និងដី (GND) ។ គន្លឹះចង្អុលបង្ហាញនៅពេលដែលឧបករណ៍ចាប់សញ្ញាគួរតែត្រូវបានធ្វើឱ្យសកម្ម (នៅពេលដែលអ៊ុលត្រាសោនចាប់ផ្តើម) ហើយដូច្នេះវានឹងអាចដឹងថាពេលវេលាកន្លងផុតទៅនៅពេលអ្នកទទួលទទួលសញ្ញា។
- អាហារ: ៣៨០ វ៉
- ប្រេកង់អ៊ុលត្រាសោន៖ ៤០ គីហ្សិចត្រចៀករបស់មនុស្សអាចលឺតែពី ២០ ហឺតដល់ ២០ គីហឺត។ អ្វីគ្រប់យ៉ាងក្រោម 40Hz (មិនច្បាស់) និងខ្ពស់ជាង 20 គីហឺត (អ៊ុលត្រាសោន) នឹងមិនអាចយល់បានទេ។
- ការប្រើប្រាស់ (ឈរ)៖ <៤០ ម
- ធ្វើការប្រើប្រាស់: ១៥០ ម
- មុំមានប្រសិទ្ធិភាព៖ <១៥ គ។ សអាស្រ័យលើមុំវត្ថុដែលអ្នកអាចមានលទ្ធផលប្រសើរឬអាក្រក់ជាងនេះ។
- វាស់ចម្ងាយ៖ ពី ២ ស។ មទៅ ៤០០ ស។ ម។ ទោះបីថាពី ២៥០ ស។ ម។ គុណភាពបង្ហាញនឹងមិនល្អទេ។
- ដំណោះស្រាយមធ្យមបំរែបំរួល ០.៣ សង្ទីម៉ែត្ររវាងចម្ងាយជាក់ស្តែងនិងរង្វាស់ដូច្នេះទោះបីជាមិនត្រូវបានគេចាត់ទុកថាមានភាពត្រឹមត្រូវខ្ពស់ដូចជាឡាស៊ែរក៏ដោយក៏ការវាស់វែងអាចទទួលយកបានដែរ
- តំលៃ: ពីប្រហែល ០.៦៥ ផោន
ការរួមបញ្ចូលជាមួយ Arduino
para ភ្ជាប់វាទៅ Arduino មិនអាចងាយស្រួលទេ។ អ្នកគ្រាន់តែជាអ្នកទទួលខុសត្រូវក្នុងការភ្ជាប់ GND ទៅនឹងទិន្នផលដែលត្រូវគ្នានៃ Arduino របស់អ្នកដែលត្រូវបានសម្គាល់ថាជា Vcc ជាមួយនឹងការផ្គត់ផ្គង់ថាមពល Arduino 5v និងម្ជុលពីរទៀតនៃអេជស៊ីអេសស៊ី ០៤ ជាមួយនឹងធាតុចូល / ទិន្នផលដែលបានជ្រើសរើសសម្រាប់គម្រោងរបស់អ្នក។ អ្នកអាចឃើញថាវាសាមញ្ញក្នុងគ្រោងការណ៍ Fritzing ខាងលើ…
អ្នកត្រូវមានការពិចារណាមួយគឺថាខ្លាត្រូវទទួលបានជីពចរអគ្គិសនីយ៉ាងតិច ១០ មីក្រូក្រេដើម្បីឱ្យវាដំណើរការបានត្រឹមត្រូវ។ កាលពីមុនអ្នកត្រូវតែប្រាកដថាវាមានតម្លៃទាប។
ដូចជាសម្រាប់ លេខកូដសម្រាប់ Arduino IDEអ្នកមិនចាំបាច់ប្រើបណ្ណាល័យណាមួយឬវត្ថុដូចនោះទេជាមួយសមាសធាតុផ្សេងទៀត។ គ្រាន់តែបង្កើតរូបមន្តដើម្បីគណនាចម្ងាយនិងតិចតួចទៀត ... ជាការពិតប្រសិនបើអ្នកចង់អោយគំរោងរបស់អ្នកធ្វើអ្វីមួយឆ្លើយតបទៅនឹងការវាស់របស់ឧបករណ៏អេចស៊ីអេសអេសអ្នកនឹងត្រូវបន្ថែមលេខកូដដែលអ្នកត្រូវការ។ ឧទាហរណ៍ជំនួសឱ្យការបង្ហាញការវាស់វែងនៅលើកុងសូលអ្នកអាចធ្វើឱ្យ servomotors ផ្លាស់ប្តូរក្នុងទិសដៅមួយឬទិសដៅមួយទៀតសម្រាប់ចម្ងាយជាក់លាក់ដើម្បីចៀសវាងឧបសគ្គឬសម្រាប់ម៉ូទ័របញ្ឈប់ការរោទិ៍ដែលត្រូវបានធ្វើឱ្យសកម្មនៅពេលវារកឃើញនៅជិត។ ។
ព័ត៌មានបន្ថែមអំពីការសរសេរកម្មវិធី៖ សៀវភៅណែនាំ Arduino (PDF ឥតគិតថ្លៃ)
ឧទាហរណ៍អ្នកអាចមើលឃើញចំណុចនេះ កូដមូលដ្ឋានដើម្បីប្រើជាមូលដ្ឋាន:
//Define las constantes para los pines donde hayas conectado el pin Echo y Trigger const int EchoPin = 8; const int TriggerPin = 9; void setup() { Serial.begin(9600); pinMode(TriggerPin, OUTPUT); pinMode(EchoPin, INPUT); } //Aquí la muestra de las mediciones void loop() { int cm = ping(TriggerPin, EchoPin); Serial.print("Distancia medida: "); Serial.println(cm); delay(1000); } //Cálculo para la distancia int ping(int TriggerPin, int EchoPin) { long duration, distanceCm; digitalWrite(TriggerPin, LOW); //para generar un pulso limpio ponemos a LOW 4us delayMicroseconds(4); digitalWrite(TriggerPin, HIGH); //generamos Trigger (disparo) de 10us delayMicroseconds(10); digitalWrite(TriggerPin, LOW); duration = pulseIn(EchoPin, HIGH); //medimos el tiempo entre pulsos, en microsegundos distanceCm = duration * 10 / 292/ 2; //convertimos a distancia, en cm return distanceCm; }
មតិយោបល់សូមចាកចេញពីអ្នក
ខ្ញុំបានរកឃើញការពន្យល់មានប្រយោជន៍និងសាមញ្ញ។