Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Автоключ для охоты на лис по радио

Компоненты и расходные материалы

Arduino UNO
× 1
Конденсатор 100 нФ
× 5
Реле (универсальное)
× 1
LED (общий)
× 1
Конденсатор 100 мкФ
× 1
Перемычки (общие)
× 1
Внешний разъем телефонной трубки / микрофона для любительского радио
× 1
Тумблер, Тумблер
× 1

Необходимые инструменты и машины

Паяльник (общий)
Проволока для припоя, без свинца
Любительское радио

Об этом проекте

Энтузиасты радиолюбителей часто стараются сохранить свои навыки радиопеленгации, тренируясь находить радио, спрятанное где-нибудь далеко (называемое «лисой»). Эти навыки полезны для поиска оборудования и людей с радиопередатчиком, и их необходимо найти.

В этом проекте используется Arduino для включения радиостанции на передачу, а затем отправляется идентификатор станции (позывной радиолюбителя) с использованием кода Морзе. Затем отправляется длинный тональный сигнал. Во время передачи можно определить местоположение радиосигнала.

У меня была моя самая первая «охота на лисиц» с использованием радиопеленгации в Институте учителей ARRL в 2011 году, и мне она очень понравилась (хотя наша команда случайно нашла не ту «лису»). Казалось, что это станет отличным занятием для учеников средней школы, которых я преподаю на уроках естествознания. К сожалению, строительство одного из них казалось либо слишком сложным, либо стоило больше, чем я был готов потратить.

Однако недавно я понял, что с недорогим 2-метровым радиоприемником и программируемым микропроцессором (например, Arduino) я мог бы сделать свою собственную «лису» за очень небольшую плату и провести веселый летний учебный проект.

Для этого проекта я использовал радиостанцию ​​Baofeng UV-3R, поскольку она недорогая (и я ее больше не использую), и Arduino Uno. Я предполагаю, что использование другого радио с другим разъемом потребует аналогичных шагов для проверки разъема и микрофона, но схема и эскиз Arduino будут такими же, за исключением радиопозывного оператора.

Примечание. Схема менее сложна, чем кажется. Были добавлены конденсаторы на 01 мкФ, чтобы схема не улавливала RFI (радиопомехи) при передаче. Без них Arduino делал необычные и непоследовательные вещи (часто перезапускался), когда радио передавало так близко к цепи. Другой конденсатор предназначен для сглаживания прямоугольной волны Arduino и превращения ее в синусоидальную волну, чтобы она звучала лучше.

Код

  • Радиоключ для охоты на лис
Радиоключ для охоты на лис Arduino
Arduino, который включает радио для передачи и отправляет код Морзе для идентификации.
 / * Нельсон Фарриер Включите радио и отправьте тональные ключи на радио Baofeng UV-3R, включив и выключив реле, затем ID и и посылает 5-секундный тональный сигнал. * / // Контакт 12 подключен к реле. // Контакт 13 подключен к цепи тонального сигнала .// изменено из:Mike Myers (http://mikemyers.me) @ netnutmike // Let's Make It Episode 6 (http ://tech-zen.tv/index.php/shows/let-s-make-it/episodes/59-sensor-fun-with-arduino-1-massive-failure-but-4-successes-let-s -make-it-episode-6) // определяем азбуку Морзе для алфавита и цифр , // C "- ..", // D ".", // E "..-.", // F "-.", // G "....", // H " .. ", // I" .--- ", // J" -.- ", // K" .- .. ", // L" - ", // M" -. ", / / N "---", // O ".--.", // P "--.-", // Q ".-.", // R "...", // S " - ", // T" ..- ", // U" ...- ", // V" .-- ", // W" -..- ", // X" -.-- " , // Y "- .." // Z}; char * numbers [] ={"-----", // 0 ".----", // 1 "..--- ", // 2" ...-- ", // 3" ....- ", // 4" ..... ", // 5" -.... ", // 6" --... ", // 7" --- .. ", // 8" ----. " // 9 --- конец 1-го сегмента заимствованного кода у Майка Майерса}; int relay =12; int TonePin =13; int частота =1000; // частота тонального сигнала dotDelay =70; // продолжительность точки в коде Морзе, это также время между точками и тире int charDelay =500; // продолжительность ожидания между буквами для метода Фарснуорта int wordDelay =1100; // продолжительность ожидания между словами для метода Фарснуорта int cycleDelay =15000; // ПОЛОВИНУ длительности, поскольку наибольшее значение равно 16383 // процедура установки запускается один раз при нажатии кнопки сброса:void setup () {// инициализирует цифровой вывод как выход. pinMode (12, ВЫХОД); pinMode (13, ВЫХОД); задержка (2000); // начальная задержка после включения питания} // процедура цикла выполняется снова и снова бесконечно:void loop () {digitalWrite (relay, HIGH); // включаем реле (HIGH - уровень напряжения) delay (1000); // ждем второго SendText ("NF7Z FOX"); задержка (1000); // ждем второго тона (TonePin, частота); // отправляем задержку тона 7 секунд (7000); noTone (TonePin); задержка (10000); // 10 секунд передача без тона digitalWrite (relay, LOW); // выключаем реле, устанавливая НИЗКОЕ напряжение задержки (cycleDelay); // ожидаем времени цикла (поскольку наибольшее значение равно 16383) delay (cycleDelay); // ждать времени цикла} // ===================================================================//// изменено из:Mike Myers (http://mikemyers.me) @ netnutmike // Функция:morseCodeSequence / /// Ввод:символьный массив точек и тире для отправки //// Описание:// Эта функция принимает в качестве входных данных массив или "." и "-" и // вызывает dotOrDash для каждого элемента в массиве .//// В конце последовательности есть задержка в 3 раза // длительность точки .//=================================================================void morseCodeSequence (char * последовательность) {int i =0; // Цикл для каждого элемента в массиве while (sequence [i]! =NULL) {dotOrDash (sequence [i]); // Отправляем точку или тире i ++; // Переход к следующему элементу в массиве} delay (charDelay); // пробел между буквами} // ===================================================================//// Функция:SendText //// Ввод:массив символов на английском языке //// Описание:// Эта функция принимает текст в качестве входных данных и отправляет азбуку Морзе для каждой буквы. // Затем после каждой буквы делается пауза. ////=================================================================void SendText (char * MorseCodeLetters ) {int i =0; char ch; // Цикл для каждого элемента в массиве while (MorseCodeLetters [i]! =NULL) {ch =MorseCodeLetters [i]; // Это строчная буква? если (ch> ='a' &&ch <='z') {morseCodeSequence (буквы [ch - 'a']); } else if (ch> ='A' &&ch <='Z') // Заглавная буква {morseCodeSequence (буквы [ch - 'A']); } else if (ch> ='0' &&ch <='9') // Число {morseCodeSequence (numbers [ch - '0']); } else if (ch =='') // Пробел (ждем 4 раза dotDelay {delay (wordDelay); // пробел между словами} else {} i ++; // Переход к следующему элементу в массиве} delay (charDelay ); // пробел между буквами} // ===================================================================//// Функция:dorOrDash //// изменено из:Mike Myers (http://mikemyers.me) @ netnutmike // Ввод:символ, который должен быть точкой или тире //// Описание:// Эта функция сначала включает вывод, затем проверяет, // является ли символ ".", и если да, то задерживает dotDelay.// // Если символ не является ".", тогда процедура предполагает, что он // является "-", и сохраняет вывод на высоком уровне, в 3 раза превышающем длину // dotDelay. Это можно улучшить, убедившись, что // символ - это "-", но в большинстве случаев это не имеет значения. //// По истечении времени задержки на выводе устанавливается низкий уровень, // выключающий тональный сигнал. //// Затем он задерживается на время задержки на одну точку, поэтому точки и тире // не идут вместе .//=================================================================void dotOrDash (char dotOrDash) {тон (TonePin, частота); если (dotOrDash =='.') {задержка (dotDelay); } else // должно быть - {delay (dotDelay * 3); } noTone (TonePin); задержка (dotDelay); // промежуток между вспышками} 

Схема


Производственный процесс

  1. Радио
  2. Охотничий нож
  3. Атака НЛО!
  4. 3D RGB Arduclock
  5. MyRiver
  6. Игра с джойстиком
  7. Найди меня
  8. ОКСИМЕТР ИМПУЛЬСА для АВАРИЙНОГО ПРИМЕНЕНИЯ во время болезни КОРОНАВИРУСА
  9. Health Band - умный помощник для пожилых людей
  10. Банк конденсаторов в кВАр и мкФ Калькулятор для коррекции коэффициента мощности