Агуулгын хүснэгт:
- Алхам 1: Энэ нь хэрхэн ажилладаг вэ?
- Алхам 2: Гурван мэдрэгч станц ба объектуудыг хэрхэн тохируулах талаар
- Алхам 3: Мастер станцыг хэрхэн тохируулах талаар
- Алхам 4: Материалын жагсаалт
Видео: Хэт авианы суурилсан байршил тогтоох систем: 4 алхам (зурагтай)
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:02
Ардуино төхөөрөмжид зориулан олсон хэт авианы радаруудын бүх хувилбарууд (Arduino - Radar/Ultrasonic Detector, Arduino Ultrasonic Radar Project) нь маш сайхан радар боловч бүгд "сохор" юм. Радар ямар нэг зүйлийг илрүүлдэг боловч юу илрүүлж байгаа юм бэ?
Тиймээс би объектыг илрүүлж, ялгах чадвартай системийг хөгжүүлэхийг санал болгож байна. Өөрөөр хэлбэл GPS төхөөрөмж ашиглахгүйгээр хэт авианы детектор ашиглан байрлалыг тодорхойлох систем юм.
Энэ бол танд таалагдсан гэж найдаж байна.
Алхам 1: Энэ нь хэрхэн ажилладаг вэ?
Байршлын системийг хэт авианы илрүүлэгч, id_node 1, 2, 3 бүхий гурван мэдрэгч станцаас бүрдүүлж, 90º өнцгөөр шулуун тэгш өнцөгт буюу дөрвөлжин хэлбэртэй болгож, тэдгээрийн хоорондох зайг 1 -р зурагт үзүүлсэн шиг нэрлэдэг.
const float distancebetween1and2 = 60.0;
const float distancebetween2and3 = 75.0;
Эдгээр мэдрэгч нь id_node 3 -аас дээш хэмжээтэй бусад объектуудын зай ба өнцгийг хэмждэг бөгөөд хэт авианы детектортой бөгөөд 170 ° өнцгийг шүүрддэг.
Тэд бүгд утасгүй холболтыг ашиглан зай, өнцөг, id_node -ийг өөр мастер станц руу илгээж, объектуудын байрлалыг тригонометрийн тооцоолол ашиглан тооцоолж, тодорхойлдог.
Хөндлөнгийн оролцооноос зайлсхийхийн тулд мастер станц нь бүх хэт авианы детекторыг синхрончилдог бөгөөд ингэснээр цаг тутамд зөвхөн нэг хэт авианы детектор хэмждэг.
Үүний дараа цуваа холболтыг ашиглан мастер станц үр дүнг боловсруулахын тулд мэдээллийг (өнцөг, зай, id_object) боловсруулах ноорог руу илгээдэг.
Алхам 2: Гурван мэдрэгч станц ба объектуудыг хэрхэн тохируулах талаар
Мэдрэгчийн станц бүрийн цорын ганц үүрэг бол объектуудыг илрүүлж, хэмжсэн зай, өнцөг, id зангилааны жагсаалтыг мастер станц руу илгээх явдал юм.
Илрүүлэлтийг сайжруулах, илрүүлэх бүсийг хязгаарлахын тулд та зөвшөөрөгдсөн хамгийн их илрүүлэх зайг ("valid_max_distance"), хамгийн багадаа ("valid_min_distance") (сантиметр) шинэчлэх хэрэгтэй.
int valid_max_distance = 80;
int valid_min_distance = 1;
Эдгээр мэдрэгч станцуудын id зангилаа (доорх кодын "this_node") нь 1, 2 ба 3 бөгөөд мастер станцын id зангилаа 0 байна.
const uint16_t this_node = 01; // Octal форматаар манай зангилааны хаяг (Node01, Node02, Node03)
const uint16_t other_node = 00; // Octal формат дахь үндсэн зангилааны хаяг (Node00)
Мэдрэгч станц бүр 100 градусын өнцөг шүүрдэнэ (доорх кодод "хамгийн их өнцөг")
#min_angle -ийг тодорхойлох 0
#max_angle 100 -ийг тодорхойлох
Дээр дурдсанчлан объектын цорын ганц үүрэг бол объектыг илрүүлж, хэмжсэн зай, өнцөг, id объектын жагсаалтыг мастер станц руу илгээх явдал юм. Нэг объектын ID (доорх код дээрх "this_node") нь 3 -аас их байх ёстой.
Объект бүрийг 170 ° өнцгөөр шүүрддэг ба дээрхтэй адилаар хамгийн их ба хамгийн бага илрүүлэх зайг шинэчлэх боломжтой.
const uint16_t this_node = 04; // Octal форматаар манай зангилааны хаяг (Node04, Node05,…)
const uint16_t other_node = 00; // Үндсэн зангилааны хаяг (Node00) Octal форматаар int valid_max_distance = 80; int valid_min_distance = 1; #min_angle 0 -ийг тодорхойлох #max_angle -ийг тодорхойлох 170
Алхам 3: Мастер станцыг хэрхэн тохируулах талаар
Мастер станцын үүрэг бол мэдрэгч станцууд болон объектуудын дамжуулалтыг хүлээн авч, үр дүнг цуврал портыг ашиглан боловсруулах схемд зурж илгээх явдал юм. Түүнээс гадна хөндлөнгөөс оролцохоос зайлсхийхийн тулд бүх объектууд болон гурван мэдрэгч станцуудыг синхрончилдог бөгөөд ингэснээр тэдгээрийн зөвхөн нэг нь хэмжигддэг.
Юуны өмнө та мэдрэгч 1 ба 2 хоорондох зай (сантиметр) ба 2 ба 3 хоорондын зайг шинэчлэх хэрэгтэй.
const float distancebetween1and2 = 60.0;
const float distancebetween2and3 = 70.0;
Ноорог нь объектуудын байрлалыг дараах байдлаар тооцоолно.
- Объектуудын бүх дамжуулалтыг (id_node 3 -аас дээш) хэт авианы мэдрэгч (id_node 1, 2 эсвэл 3) дамжуулах бүрт ижил зайг хайна.
- Эдгээр бүх цэгүүд нь нэг объектын байрлал болох "нэр дэвшигчдийн" (зай, өнцөг, id_node) жагсаалтыг бүрдүүлдэг (ноорог дээрх "process_pointobject_with_pointssensor").
- Өмнөх жагсаалтын "нэр дэвшигч" бүрийн хувьд "нэр дэвшигч_сонгосон_багана_сенсор2 ба 3" функц нь хэт авианы мэдрэгч 2 ба 3 -аас аль нь дараах тригонометрийн нөхцөлтэй тохирч байгааг тооцоолно (2 ба 3 -р зургийг үз).
хөвөх зай froms2 = sin (радиан (өнцөг)) * зай;
float distancefroms3 = cos (radians (angle_candidate)) * distance_candidate; // Тригонометрийн нөхцөл 1 ABS (зайны зай2 + зайн зай3 - хоорондын зай2 ба3) <= хөвөх
Дээрх шиг, өмнөх жагсаалтын "нэр дэвшигч" бүрийн хувьд "нэр дэвшигч_сонгогдсон_багана_сенсор1 ба 2" функц нь хэт авианы мэдрэгч 1 ба 2 -ийн үүднээс тэдгээрийн аль нь дараах тригонометрийн хамааралтай тохирч байгааг тооцоолдог (2 ба 3 -р зургийг үз)
float distancefroms1 = sin (радиан (өнцөг)) * зай; хөвөх зай froms2 = cos (радиан (өнцөг_кандидат)) * зай_кандидат; // Тригонометрийн 2 нөхцөл (absfroms1 + distancefroms2 - хоорондын зай1 ба 2) <= float (max_diference_distance)
Тригонометрийн 1 ба 2 -р нөхцөлтэй тохирч буй нэр дэвшигчид (зай, өнцөг, id_node) нь 1, 2, 3 мэдрэгч станцуудаар илрүүлсэн объектуудыг тодорхойлдог
Үүний дараа үр дүнг мастер станц боловсруулах график руу илгээж тэдгээрийг төлөвлөж байна.
Алхам 4: Материалын жагсаалт
Нэг мэдрэгч станц эсвэл нэг объектод шаардлагатай материалын жагсаалт дараах байдалтай байна.
- Нано самбар
- Хэт авианы мэдрэгч
- Бичил servo мотор
- NRF24L01 утасгүй модуль
- NRF24L01 адаптер
мөн мастер станцын материалын жагсаалт дараах байдалтай байна.
- Нано самбар
- NRF24L01 утасгүй модуль
- NRF24L01 адаптер
Зөвлөмж болгож буй:
Өнгө ялгах систем: Arduino дээр суурилсан хоёр бүстэй систем: 8 алхам
Өнгө ялгах систем: Arduino дээр суурилсан хоёр бүстэй систем: Аж үйлдвэрийн салбарт бүтээгдэхүүн, эд зүйлсийн тээвэрлэлт, сав баглаа боодол нь туузан дамжуулагч ашиглан хийгдсэн шугамыг ашиглан хийгддэг. Эдгээр бүс нь тухайн зүйлийг нэг цэгээс нөгөө цэг рүү тодорхой хурдаар шилжүүлэхэд тусалдаг. Зарим боловсруулалт эсвэл таних даалгавар нь
Хэт авианы мэдрэгч ашиглан DIY радар систем: 3 алхам
Хэт авианы мэдрэгч ашиглан DIY радар систем: Энд би хэт авианы мэдрэгч arduino болон servo мотор ашиглан хийхэд хялбар энэхүү төслийг хуваалцаж байна
Хэт авианы суурилсан хандалтын систем: 6 алхам (зурагтай)
Хэт авианы суурилсан хандалтын систем: Энэ удаа танд хэт авианы суурилсан хандалтын системийг танилцуулж байна, энэ нь сонирхолтой байж магадгүй гэж бодож байна.Энэ нь хэт авианы долгион дээр суурилсан тул контактгүй нэвтрэх систем бөгөөд өөр ямар ч электрон төхөөрөмж хэрэггүй, гэхдээ таны гар оролдох гэж
Arduino дээр суурилсан контактгүй хэт улаан туяаны термометр - Arduino ашиглан IR суурилсан термометр: 4 алхам
Arduino дээр суурилсан контактгүй хэт улаан туяаны термометр | Arduino ашиглан IR суурилсан термометр: Сайн байна уу залуусаа энэ зааварчилгаанд бид arduino ашиглан контактгүй термометр хийх болно. Заримдаа шингэн/хатуу бодисын температур хэт өндөр эсвэл бага байдаг тул түүнтэй холбоо тогтооход хэцүү байдаг. тэр үед температур
Хэт авианы мэдрэгч ашиглан Arduino дээр суурилсан бие даасан бот: 5 алхам (зурагтай)
Хэт авианы мэдрэгч ашиглан Arduino -д суурилсан бие даасан бот: Хэт авианы мэдрэгч ашиглан өөрийн Arduino -д суурилсан автономит бот үүсгээрэй. Үндсэндээ юу хийдэг вэ гэхээр энэ нь замдаа гарч буй аливаа саад бэрхшээлийг илрүүлж, хамгийн сайн шийдлийг шийддэг