Uy jihozlarini ovoz bilan boshqarish tizimini yaratish MaxBotix mb1240 ultratovush masofa sensori Arduino qo'llanma


MaxBotix MB1240 Arduino misol kodi-puls kengligi


Download 451.92 Kb.
bet4/7
Sana24.12.2022
Hajmi451.92 Kb.
#1062267
1   2   3   4   5   6   7
Bog'liq
Oqil. KURS ISHI



MaxBotix MB1240 Arduino misol kodi-puls kengligi


Ushbu misolda biz sensorning boshqa chiqishidan foydalanamiz: impuls kengligi chiqishi.
/* Arduino example code for MaxBotix MB1240 XL-MaxSonar-EZ4 ultrasonic distance sensor: pulse width output. More info: www.www.makerguides.com *
/ #define sensorPin 2 long distance = 0; long duration = 0; void setup()
{
pinMode(sensorPin, INPUT); Serial.begin(9600);}
void read_sensor() {
duration = pulseIn(sensorPin, HIGH);
distance = duration / 58; }
void print_data() {
Serial.print("distance = ");
Serial.print(distance); Serial.println(" cm"); }
void loop() {
read_sensor();
print_data();
delay(1000);
}

Kodni tushuntirish


Ulanish pinini aniqlagandan so'ng, men ikkita o'zgaruvchini yaratdim:
Duration
Va
distance. 
Muddati sensor tomonidan yuborilgan puls uzunligini saqlaydi. Masofa o'zgaruvchisi hisoblangan masofani saqlash uchun ishlatiladi.
long distance = 0; long duration = 0;

Sozlashda, ketma-ket aloqani boshlashdan tashqari, biz sensorpinni kirish sifatida o'rnatishimiz kerak. Buning uchun biz funktsiyadan foydalanamiz


pinMode(pin, mode)
void setup() { pinMode(sensorPin, INPUT); Serial.begin(9600); }
Read_sensor funksiyasi oldingi misoldan farq qiladi. Endi biz analog kuchlanish chiqishini emas, balki sensor tomonidan yuborilgan puls uzunligini o'lchaymiz. Buning uchun biz funktsiyadan foydalanamiz
pulseIn(pin, value). 
Bu funksiya Pinning pastdan yuqoriga o'tishini kutadi, vaqtni boshlaydi, keyin Pinning past bo'lishini kutadi va vaqtni to'xtatadi. U pulsning uzunligini mikrosaniyalarda qaytaradi.
Shundan so'ng, davomiylik o'lchovini 58 ga bo'lish orqali masofani santimetrda hisoblashimiz mumkin. Boshqa MaxBotix sensorlari uchun ushbu masshtablash koeffitsientini ma'lumotlar sahifasida topishingiz mumkin.
void read_sensor() { duration = pulseIn(sensorPin, HIGH); distance = duration / 58; }
Kodning qolgan qismi oldingi misol bilan bir xil.


Download 451.92 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling