- Собираем персональный радар малого радиуса действия
- Панорамный пассивный радиолокатор
- Устройство
- Эксперимент №1 – панорамный радиоснимок комнаты
- Эксперимент №2 – радиоснимок из окна
- Эксперимент №3 — радиоснимок человека
- Эксперимент №4 – радиоснимки лампочек
- Самодельный радар с монитором на Ардуино
- Исходный код
Собираем персональный радар малого радиуса действия
Идея создания некоего подобия радара для определения расстояния пришла одному из моих студентов. Мы продолжили ее разработку и решили ввести в программу курса в качестве одного из проектов.
После пары недель подготовки мы, наконец, определились, как его начинать и что для этого может понадобиться. Проект не должен был быть очень продвинутым; мы установили средний уровень сложности. Ниже представлен пример использования персонального радара узкого диапазона. Он и должен был выглядеть немного смешно, так что можете смеяться!
Описание и цель проекта
Целью проекта было создание функционирующего радара. От системы требуется лишь измерять расстояние под углом в 90 градусов, как показано в примере выше. В зависимости от выбранного сенсора, система функционирует в пределах 4-30 см, 20-150 см и 1-5,5 м.
Результаты проекта повлияют на последующие разработки, в которых мы попытаемся интегрировать радар для навигации мобильных роботов в естественных условиях.
Электронные детали
- Стабилизатор напряжения LM7805 5 В
- Микроконтроллер PIC18F452
- ИК Сенсор GP2D120
- Кварцевый резонатор на 4 или 8 MHz
- Переключатель
- Конденсатор
- 30-тиконтактный разъем
- 5 триггеров 74LS373
- Макетная плата
- Припой
- 36 индикаторов
- Провод 30 AWG
- Инструменты для работы с проводами
- Паяльник
Подробный список запчастей
Вы можете знать, а можете и не знать всего относительно вышеперечисленных деталей, поэтому, чтобы помочь разобраться в них, было включено изображение каждой детали. Появились три новых объекта, не указанных до этого в проекте: сервосистема, 74HCT373 и ИК сенсоры. Скоро появится описание и ИК датчиков; что касается 74HCT373 — ниже будет пред ставлен краткий обзор. Вы всегда можете свериться с спецификацией микросхем, просто задав поиск по запросу «74HCT373».
74HCT373
74HCT373
Восьмиразрядная микросхема, содержащая в себе трехстабильный триггер. Проще говоря, данный чип способен хранить 8 бит цифровой логики и удерживать в памяти до стирания или изменения ее посредством LE-Latch Enable вывода.
Принципы работы
- Управляющие выводы LE и OE
- 8 Ввод данных D0-D7
- 8 Вывод данных D0-D7
Питание (Vcc & GND.)
Активация вывода (ОЕ) позволяет Q0-Q7 выводить данные на данный момент находящиеся в D-триггерах.
Активация триггера (LE) позволяет перезапись данных, содержащихся на D0-D7, в D- триггер.
Обзор схемы
Схема для данного проекта намного сложнее предыдущих. В нашей разработке есть 4 основных преимущества.
- Мы сможем программировать изображения с разрабатываемой платы.
- Мы будем контролировать сервосистему.
- Мы будем снимать данные с ИК сенсора расстояния.
- Мы установим 36 LEВ индикаторов для отображения вывода данных, полученных с ИК сенсора.
- Питание осуществляется через аккумулятор на 9В, подключенный к LM7805 с конденсатором 1uF, подключенным к выводу/заземлению для обеспечения бесперебойного постоянного тока LM7805.
- Программный цикл
- Программирование осуществляется посредством подсоединения двух разъемов от контроллера к программатору, предоставляя первому разъему программатора доступ к MCLR*/Vpp-Pin1 на контроллере. В целях безопасности установлен выпрямительный диод.
- ИК Сенсор Расстояния
- ИК Сенсор использует один разъем контроллера PIN 2 — RA0. Используются аналоговые возможности этого вывода для получения значения АЦП, так как с ИК сенсора снимается только аналоговый сигнал. Данное значение сообщает, есть ли что-то в радиусе охвата сенсора.
В общей сложности еcть 40 LED индикаторов. Каждый чип 74HCT373 контролирует до 8 индикаторов; так как 40/8=5, нам нужно 5 схем 74HCT373, чтобы управлять всеми 40 индикаторами. Необходимо отметить на схеме, что для всех 5 чипов используется одна шина данных.
Данная разработка использует три основных прибора для создания персонального радара. ИК сенсор подключается к микроконтроллеру, и затем выводится на сегмент индикаторов. Предоставляется наглядная демонстрация этого процесса:
Использование разных сенсоров
Важным аспектом в точности ИК сенсоров, используемым в данном проекте является то, что они имеют одинаковые характеристики напряжения, поэтому данная программа совместима со всеми индикаторами. Единственное, что необходимо знать, — как используется сенсор для определения расстояния, выводимого на индикаторах.
Итак, взглянем на окончательный вид прибора:
Таков внешний вид собранного прибора. Перейдем к следующему разделу и продолжим сборку прибора.
Пластиковый корпус внизу на картинке не упоминался в списке запчастей. Это обычный корпус, который можно приобрести у любого производителя или продавца электроники. В первую очередь необходимо просверлить 36 отверстий для индикаторов в схеме и закрепить в них индикаторы. Перед вставкой индикаторов в отверстия было использовано закрепляющее вещество.
После того, как панель спаяна, начинаем подключение схемы. Каждый проводок нужно подключить сквозь маленькое отверстие корпуса.
Рисунок выше отображает вид панели на ранней стадии. В начале подключения проводов наблюдается скопление огромного их количества, например, вот так:
Последним штрихом в разработке персонального радара является возможность его использования он-лайн. Используются провода длиной 2-4-метра при подключении сервосистему и ИК сенсор. Проделываем отверстие спереди корпуса для данных проводов:
Последним штрихом в разработке персонального радара является возможность его использования он-лайн. Используются провода длиной 2-4-метра при подключении сервосистему и ИК сенсор. Проделываем отверстие спереди корпуса для данных проводов:
Покончив со сборкой перейдем к программной части разработок. Это, безусловано, более тонкая часть разработки, чем даже прокладывание проводов.
Программное обеспечение для данного прибора включает три основных части:
- Управление Сервосистемой
- Управление LED-индикацией
- ввод A/D/
Поскольку все программное обеспечение данного проекта не поместится на одной странице, будет объяснено, что это за части и как они работают.
Управление Сервосистемой
Управление сервосистемой осуществляется таймерами и прерываниями. Двумя отдельными прерываниями, срабатывающими одновременно для создания желаемого звука, генерируется сигнал в 50 Ггц, и указатель сервосистемы двигается маленькими шагами регулируя скрипящий звук.
Регулирование LED индикации.
Индикаторы регулируются триггерами 74LS373/74HCT373. Система постоянно обновляет данные триггера, выводимые на индикаторы.
А/Ц Ввод
ИК сенсор осуществляет аналоговый вывод. Используется конвертор для определения значения напряжения, сообщающий, что объект вышел на расстояние вне зоны действия ИК сенсора.
Завершена сборка и настройка прибора — нужно протестировать его. В заисимости от используемого вами сенсора, индикация будет разная. Сенсоры на выбор GP2D120, GP2Y0A21YK и GP2Y0A700K0F.
Данные и наблюдения
Первым тестом радара будет тест на близком расстоянии. В качестве препятствий были использованы консервные банки.
На втором видео (на первой страничке) тестируются индикаторы 20 см — 150 см и 1 м — 5.5 м, позволяющие преодолевать более серьезные препятствия. Посмотрите, чтобы понять, о чем идет речь.
Два видеоролика продемонстрируют работу сенсора, однако при самостоятельной сборке возможны небольшие затруднения, которые будут описаны в заключении.
Обзор персонального радара
Сборка и настройка данного прибора занимает немного времени. Это проект, который вы сможете за день, и он уже имеет нишу в применении, но с течением времени будут возникать дополнительные трудности. ИК сенсоры могут становиться ненадежными, результаты вывода могут быть малыми из-за влияния среды и окружения.
Действия, которые нужно предпринять
Для увеличения радиуса охвата сенсора планируется использование ультразвуковых датчиков, эквивалентных описанным выше «звуковым сенсорам», передавая данные о расстоянии от вас до объекта. Диапазон ультразвука шире чем у инфракрасного излучения, и он более надежен в неблагоприятных условиях.
Заключение
Проект был увлекательным изучением сенсоров ИК излучения. Он демонстрирует, что результаты могут быть получены и использованы реально. Многие дальнейшие проекты могут быть разработаны на базе этого.
Источник
Панорамный пассивный радиолокатор
В этой статье я хочу рассказать об очередном эксперименте с пассивным панорамным радиолокатором. Предыдущие эксперименты описаны в статьях «Радиотелескоп» и «СВЧ пассивный радиотеплолокатор в диапазоне 10 ГГц».
Первые панорамные радиоснимки были получены с помощью сетчатой параболической антенны диаметром 1,8 м установленной стационарно.
Следующий радиолокатор не был панорамным, т.е. он мог работать только в азимутальной плоскости. Зато он позволил поэкспериментировать, как в плане механики и электроники, так и в плане использования антенн малого диаметра. Сначала было не понятно – будут ли эффективны зеркала диаметром около 50 см при приёме собственных шумов объектов?
После первых экспериментов сразу стало ясно, что это вполне возможно и меня посетила мысль сделать небольшой мобильный панорамный радиолокатор с антенной диаметром 50 см.
Устройство
Для опоры я использовал треногу от оптического телескопа, которую заимствовал у товарища. Поворотный механизм собран из двух червячных редукторов, к которым подсоединены моторедукторы со встроенными датчиками.
На выходном фланце поворотного механизма закреплена прямофокусная антенна диаметром 50 см. В фокусе установлен конвертер от спутникового телевидения.
Сигнал с конвертера поступает на усилитель высокой частоты, затем на амплитудный детектор и далее на усилитель постоянного тока. После усилителя сигнал оцифровывается однобайтным АЦП. Контроллер пульта управления поворотным механизмом по запросу компьютера считывает положение антенны, опрашивает АЦП и отправляет эти данные обратно в компьютер.
Управляющая программа в компьютере сначала подготавливает задание в соответствии с заданными координатами панорамы, а затем, по мере надобности отправляет нужные координаты пульту управления.
Одновременно с этим компьютер постоянно (каждые 20 мс) отправляет запросы о положении антенны и уровне сигнала. На основе этих данных и рисуется картинка в окне программы.
Эксперимент №1 – панорамный радиоснимок комнаты
На самом деле это пол комнаты. Середина снимка это угол комнаты. Соответственно на левой стене два окна и на передней стене два окна. Левые окна выходят не на улицу, а на застеклённый балкон (это восток). Передняя стена смотрит на юг и окна выходят прямо на улицу.
Что видно на этих снимках:
А. В крайнем левом окне, вертикальная полоса справа – это часть рамы этого окна, а вертикальная полоса слева – это часть рамы окна балкона. В соседнем окне всё тоже самое. Два окна слева кажутся меньше по высоте по сравнению с окнами в правой части снимка. На самом деле они одинаковые по размеру. В окнах слева, сверху сильно светит потолок балкона.
Б. Окна в правой части радиоснимка. В окне, которое ближе к центру, вертикальная полоса – это часть рамы окна. Внизу окна видна крыша соседнего дома. В крайнем справа окне тоже просматривается часть рамы и ещё видна светлая полоса идущая от верхнего левого угла, практически по диагонали вниз. Я точно не уверен, но подозреваю, что так виден размазанный сигнал от спутников на геостационарной орбите.
Эксперимент №2 – радиоснимок из окна
Этот радиоснимок я делал, установив антенну непосредственно перед окном.
Внизу снимка видна крыша соседнего дома. Вертикальная полоса справа – это часть рамы окна. Светлая дуга по середине снимка идущая слева на право – это размазанные сигналы со спутников, а источники этих сигналов можно увидеть слева (светлое пятнышко) и справа (светлое расплывшееся пятно).
Эксперимент №3 — радиоснимок человека
Экспериментируя с портативным радиометром я обнаружил, что тело человека тоже излучает радиошум.
Однако с помощью такого радиометра радиоснимок не сделаешь. Теперь у меня появилась такая возможность и этот эксперимент для меня оказался наиболее интересным. Я сделал несколько радиоснимков самого себя. Оказалось, что тело человека сильно светится в радиодиапазоне.
На левом снимке я стою с опущенными руками, на среднем руки раздвинуты в стороны и на правом руки подняты вверх. Для чистоты эксперимента я снял с себя одежду, чтобы быть уверенным в том, что излучает именно тело, а не одежда.
Эксперимент №4 – радиоснимки лампочек
Я не стал делать картинки радиоснимков лампочек. Эксперимент проводился над энергосберегающей лампочкой, светодиодной и обычной (накаливания). Энергосберегающая лампа ярко светит в диапазоне 10 ГГц, чего не скажешь об остальных лампочках. На видео можно увидеть, как я делал радиоснимки и лампочек в том числе.
Сейчас я наметил следующие эксперименты по теме пассивной радиолокации, но несколько на другом оборудовании. Это будет другая статья.
Источник
Самодельный радар с монитором на Ардуино
Не знаю кто как, но я давно хотел сделать радар, такой чтоб туда-сюда излучатель крутился и на экране видно было наличие и дистанцию до объектов. Конечно в домашних условиях вещь, подобную военным или авиа службам сделать не получится — там и мощности, и размеры недосягаемые. Но что-то похожее, причём совсем не сложное и не дорогое (пару тысяч рублей) соорудить возможно. Итак, на основе популярного Ардуино вы можете сделать такую себе мини РЛС с помощью ультразвукового детектора и собственно платы Arduino. Схема подсмотрена на сайте «Мехатроник». Все, что нужно для этого проекта: ультразвуковой датчик для обнаружения объектов, маленький серводвигатель для поворота датчика и плата Arduino для управления ими. Ну и макетка с проводами.
Сначала сделаем крепление для подключения ультразвукового датчика к серводвигателю. Изготавливаем его, как это показано на рисунке ниже, потом он приклеивается и крепится к двигателю с помощью винта.
Теперь прикрепите штырьки, на которые припаяем 4 провода для подключения датчика.
Прикрепите мотор сервопривода к плате Arduino, используя обычную резинку для волос.
Мы подключили ультразвуковой датчик HC-sr04 к выводам 10 и 11, а серводвигатель к 12 контакту на плате Arduino.
Исходный код
Теперь нужно взять код и загрузить его на плату Ардуино, которая позволит взаимодействовать между Arduino и обработкой сигнала. Здесь будем получать значения для угла и расстояние, измеренное с помощью датчика с платы Arduino на обработку IDE с помощью функции SerialEvent(), которая считывает данные из последовательного порта, и будем ставить значения угла и расстояния в переменные iAngle и iDistance. Эти переменные будут использоваться для построения линии обнаружения объектов.
void drawRadar() <
pushMatrix();
translate(960,1000); // moves the starting coordinats to new location
noFill();
strokeWeight(2);
stroke(98,245,31);
// draws the arc lines
arc(0,0,1800,1800,PI,TWO_PI);
arc(0,0,1400,1400,PI,TWO_PI);
arc(0,0,1000,1000,PI,TWO_PI);
arc(0,0,600,600,PI,TWO_PI);
// draws the angle lines
line(-960,0,960,0);
line(0,0,-960*cos(radians(30)),-960*sin(radians(30)));
line(0,0,-960*cos(radians(60)),-960*sin(radians(60)));
line(0,0,-960*cos(radians(90)),-960*sin(radians(90)));
line(0,0,-960*cos(radians(120)),-960*sin(radians(120)));
line(0,0,-960*cos(radians(150)),-960*sin(radians(150)));
line(-960*cos(radians(30)),0,960,0);
popMatrix();
>
Для рисования линии, которая движется вдоль радара, сделана функция drawLine(). Переменная iAngle используется как линия, что перерисовывается для каждой ступени.
void drawLine() <
pushMatrix();
strokeWeight(9);
stroke(30,250,60);
translate(960,1000); // moves the starting coordinats to new location
line(0,0,950*cos(radians(iAngle)),-950*sin(radians(iAngle))); // draws the line according to the angle
popMatrix();
>
Для прорисовывания обнаруженных объектов служит функция drawObject(). Она получает расстояние от ультразвукового датчика, преобразует его в пикселах, и в сочетании с углом датчика рисует объект на радаре — экране ЖК монитора.
void drawObject() <
pushMatrix();
translate(960,1000); // moves the starting coordinats to new location
strokeWeight(9);
stroke(255,10,10); // red color
pixsDistance = iDistance*22.5; // covers the distance from the sensor from cm to pixels
// limiting the range to 40 cms
if(iDistance
|