Мазмұны:
- Жабдықтар
- 1 -қадам: ультрадыбыстық VS инфрақызыл сенсор
- 2 -қадам: схемалық
- 3 -қадам: сенсордың сипаттамасы
- 4 -қадам: сериялық байланыс
- 5 -қадам: Qt қосымшасы
- 6 -қадам: Arduino бастапқы коды
Бейне: Arduino көмегімен инфрақызыл радар: 6 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
Бұл шағын жобада мен сізге Arduino көмегімен үйде қарапайым радарды қалай құруға болатынын көрсеткім келеді. Интернетте көптеген ұқсас жобалар бар, бірақ олардың барлығы қашықтықты өлшеу үшін ультрадыбыстық сенсорды қолданады. Бұл жобада мен қашықтықты өлшеу үшін инфрақызыл сенсорды қолданамын.
Менің мақсатым - онымен өте қарапайым және арзан LIDAR жүйесін құру және картографиялық құрылғыны енгізу.
Жабдықтар
- Arduino (мен Maple Mini қолдандым)
- Айқын қашықтық сенсоры (мен Sharp GP2Y0A02YK0F қолдандым)
- Микросерво (9г)
- Нан тақтасы, сымдар
- Қосымша: 4.7k резистор, 100nF конденсатор
1 -қадам: ультрадыбыстық VS инфрақызыл сенсор
Ультрадыбыстық және инфрақызыл сенсорлардың негізгі айырмашылығы - ультрадыбыстық сенсор қашықтықты кеңірек диапазонда өлшейді. Сондықтан ол кедергінің орнын дәл анықтай алмайды. Бұл ~ +30 ° бұрыш диапазонында орналасқан ең жақын объектінің қашықтығын өлшейтінін білдіреді.
Әрине, бұл Sharp сенсоры жақсы дегенді білдірмейді. Кейде бұл қасиет өте пайдалы болуы мүмкін (мысалы, дрондар жерден биіктікті өлшеу үшін қолданылады). Дұрыс таңдау сіздің жобаңыздың талаптарына байланысты.
2 -қадам: схемалық
Бөлшектер арасындағы байланысты орнату өте қарапайым. Arduino тақтасында PWM шығысы мен аналогтық кірісті таңдап, осы түйреуіштерге Servo және Sharp қашықтық сенсорларын қосыңыз. Мен бұл үшін келесі түйреуіштерді қолдандым:
- PA0: Sharp қашықтық сенсоры үшін аналогтық кіріс
- PA9: Servo үшін PWM шығысы
Кейде Sharp IR сенсоры шу шығаруы мүмкін, сондықтан оған қарапайым төмен сүзгі қою керек. Мен аналогтық істікшенің шуын азайту үшін 4.7k резистор мен 100nF конденсаторды қолдандым. Сонымен қатар, мен кодтағы өлшенген мәнді бірнеше рет оқып, орташа мәнді есептеп сүздім.
3 -қадам: сенсордың сипаттамасы
Өкінішке орай, қолданылатын инфрақызыл қашықтық сенсоры сызықты емес сипаттамаларға ие. Бұл қашықтықты алу үшін өлшенген ADC мәнін тұрақты мәнге көбейту және оған басқа тұрақты мәнді қосу жеткіліксіз екенін білдіреді.
Сенсордың деректер кестесі сипаттаманы қамтамасыз етсе де, мен оны белгілі бір жобада өлшегенді жөн көремін (ол қолданылатын кернеуге байланысты болуы мүмкін). Ол үшін мен әрбір 10 см үшін өлшенген ADC мәні мен қашықтығынан жұптар жасадым. (Менің сенсорым 12 см -ден дұрыс қашықтықты өлшей алды).
Мен бұл жұптарды сызықтық интерполяциямен дұрыс қашықтықты алу үшін қолдандым.
Құжаттың соңында ADC мәнін өлшеу үшін қарапайым Arduino кодын табасыз.
4 -қадам: сериялық байланыс
Мен өлшенген бұрыштық қашықтықтың мәндерін дербес компьютерге жіберу үшін сериялық байланысты қолдандым. Мен бірнеше байтты және әр түрлі хабарламаларды жіберуім керек болғандықтан, мен қарапайым байланыс хаттамасын жасадым.
Бұл прокотол әр түрлі хабар түрлерін жалпы түрде анықтауға мүмкіндік береді. Бұл жобада мен 2 хабар түрін қолдандым:
- Параметрлер: Ардуинода максималды қашықтық пен кедергілер саны сияқты анықталған ДК қосымшасына параметрлерді жіберу үшін қолданылады.
- Кедергілер: анықталған кедергіні жіберу үшін қолданылады. Ол серво бұрышымен және өлшенетін қашықтықпен анықталады. X-y позициясы ДК қосымшасы бойынша есептеледі.
5 -қадам: Qt қосымшасы
Arduino -мен байланыс орнату және өлшенетін нүктелерді радар сияқты салу үшін мен Qt (C ++) компьютерлік қосымшасын жасадым. Ол кейбір параметрлерді (Arduino -да анықталған) және өлшенген қашықтық нүктелерін алады.
Сіз қосымшаны және оның бастапқы кодын жүктей аласыз.
6 -қадам: Arduino бастапқы коды
Сіз макростармен кодтың жоғарғы жағындағы кейбір параметрлерді реттей аласыз.
Назар аударыңыз, егер сіз Sharp қашықтық сенсорының сипаттамасын өзгертсеңіз, distAdcMap массивінің мәндерін өзгертуіңіз керек!
- InfraRadar.c: радар коды. Оны көшіріп, Arduino жобасына қойыңыз.
- InfraRadarMeasurement.c: сипаттамалық өлшеу коды. Оны көшіріп, Arduino жобасына қойыңыз. ADC мәндерін тексеру үшін сериялық консольді пайдаланыңыз.
Ұсынылған:
Arduino көмегімен инфрақызыл сенсорды қолдану: 8 қадам (суреттермен)
Инфрақызыл сенсорды Arduino көмегімен қолдану: инфрақызыл сенсор дегеніміз не? Инфрақызыл сенсор дегеніміз не? Инфрақызыл сенсор - бұл стандарттармен анықталған белгілі бір жиілік диапазонында ИҚ сигналдарын сканерлейтін және оларды шығыс түйреуішіндегі электр сигналдарына түрлендіретін электрондық құрылғы (әдетте сигналдық түйреуіш деп аталады) . IR сигналы
Arduino көмегімен үйдегі инфрақызыл автоматтандыру: 5 қадам
Arduino көмегімен үйдегі инфрақызыл автоматтандыру: ARDUINO HOME AUTOMATION Үйді автоматтандыру - бұл қолмен жасайтын нәрсені автоматты түрде жасауды білдіреді. Әдетте сіз коммутаторды айналдырасыз, егер сіз қашықтан басқару пультіне бассаңыз, шамыңыз автоматты түрде келеді
Arduino көмегімен инфрақызыл матрицалық пароль енгізу жүйесі: 13 қадам
Arduino көмегімен инфрақызыл матрицалық парольдерді енгізу жүйесі: ICStation командасы Arduino үйлесімді тақтасына негізделген инфрақызыл матрицалық пароль енгізу жүйесін ұсынады. Ол 5В тұрақты ток көзінде жұмыс істейді және парольді енгізу үшін 4 *4 матрицалық пернетақтаны немесе инфрақызыл қашықтан басқару пультін қолданады және біз
Arduino негізіндегі байланыссыз инфрақызыл термометр - IR негізіндегі термометр Arduino көмегімен: 4 қадам
Arduino негізіндегі байланыссыз инфрақызыл термометр | Ардуиноны қолданатын инфрақызыл термометр: Сәлеметсіз бе, балалар, біз индуктивті емес термометр жасаймыз, өйткені кейде сұйықтықтың/қатты заттың температурасы тым жоғары немесе төмен болады, содан кейін онымен байланыс жасау және оны оқу қиын. сол кездегі температура
Инфрақызыл қашықтан басқару пульті мен IR қабылдағышы (TSOP1738) Arduino көмегімен: 10 қадам
Инфрақызыл қашықтан басқару пульті мен IR қабылдағышы (TSOP1738) Arduino көмегімен: Бұл нұсқаулық Arduino жаңадан бастаушыларға арналған. Бұл менің Arduino -мен бұрын жасаған жобаларымның бірі. Мен жасаған кезде маған өте ұнады және сізге де ұнайды деп сенемін. Бұл жобаның ең тартымды ерекшелігі - бұл & ampquotСымсыз басқару ” Және бұл