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

Передача кода Морзе с использованием лазерного модуля (оба)

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

Arduino UNO
× 2
Макет (общий)
× 2
ЛАЗЕРНЫЙ ПЕРЕДАТЧИК Autodesk
× 1
Фоторезистор
× 1
Перемычки (общие)
× 1

Приложения и онлайн-сервисы

IDE Arduino

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

Азбука Морзе

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

Шаг 1. Секция передатчика

Секция передатчика используется для отправки входных данных через ЛАЗЕР.

Требуемое оборудование:-

  • Arduino Uno
  • ЛАЗЕРНЫЙ передатчик
  • Макет
  • Проволочные перемычки

Подключения:-

Соедините положительный вывод ЛАЗЕРА с 13-м выводом цифрового входа в Arduino (как запрограммировано в коде). Соедините GND ЛАЗЕРА с GND Arduino.

Программа:-

Алгоритм Кодекса следующий:-

  • 1. Данные, которые необходимо передать, хранятся в виде входных данных в виде массива символов.
  • 2. Определен вывод светодиода, который должен быть передан.
  • 3. Скорость азбуки Морзе установлена.
  • 4. Определены точки и тире.
  • 5. Введенный символ проверяется через регистр переключателя, и передаются соответствующие HIGH и LOW ЛАЗЕРА.

Шаг 2. Секция приемника

Кодированные данные, которые отправляются передатчиком, принимаются и обрабатываются, после чего они отображаются на последовательном мониторе.

Требуемое оборудование:-

  • 1. Ардуино Уно
  • 2. LDR
  • 3. Резистор - 10 кОм
  • 4. Хлебная доска
  • 5. Провода перемычки

Подключения:-

Подключите один конец LDR к 5В источника питания Arduino. Подключите другой конец LDR с резистором 10 кОм, а также с аналоговым входом A0. Подключите другой конец резистора к GND Arduino.

Программа:-

Алгоритм, используемый в разделе приемника, является самым простым алгоритмом, чем любой другой из доступных в Интернете. Этот алгоритм полон наблюдений.

  • 1. Когда на LDR не попадает ЛАЗЕР, тогда значение LDR будет меньше 1000. Если значение выходит за пределы 1000, даже если ЛАЗЕР светится на LDR, тогда вам нужно закрыть LDR, чтобы защитить от лишних свет проникает в него. Здесь LDR покрыт куполом из черной диаграммной бумаги.
  • 2. Когда ЛАЗЕР падает на LDR, значение выходит за пределы 1000, и затем он входит в цикл.
  • 3. Теперь квантуйте значения, т.е. если значение превышает 1000, присвойте ему «1», в противном случае присвойте ему «0».
  • 4. Внутри цикла вычислите количество единиц и нулей. Установите счетчики «a» и «f». Подсчитайте количество «1» и сохраните его в «a», и аналогичным образом подсчитайте количество «0» и сохраните его в «f» соответственно.
  • 5. Теперь проверьте конкретные значения «a» и «f» соответственно. У каждого персонажа будет свой набор букв «а» и «е». Будет отображено совпадающее значение.

Ограничение:-

Программа, прикрепленная к коду, используется для печати определенных символов. Вы можете дополнительно улучшить код, используя Комбинации и отображая весь набор символов. Основная цель кода - дать вам понимание алгоритма и работы.

Код

  • КОД-1 - ДЛЯ УПРАВЛЕНИЯ ЛАЗЕРНЫМ ИЗЛУЧАТЕЛЕМ
  • КОД-2 - ДЛЯ ПРИЕМНИКА
КОД-1 - ДЛЯ УПРАВЛЕНИЯ ЛАЗЕРНЫМ ЭМИТТЕРОМ Arduino
 int led13 =13; // мигание светодиода на выходе 13 / * Установка скорости вашего кода Морзе Вот соотношение элементов кода:Длина тире =длина точки x 3 Пауза между элементами =длина точки * / int dotLen =200; // длина кода Морзе 'dot'int dashLen =dotLen * 3; // длина кода Морзе 'dash'int elemPause =dotLen; // длина паузы между элементами символа int Spaces =dotLen * 3; // длина пробелов между символами int wordPause =dotLen * 7; // длина паузы между словамиvoid setup () {// инициализируем цифровой вывод как выход для светодиодных индикаторов. pinMode (led13, ВЫХОД); } // Создаем цикл из букв / слов, которые вы хотите вывести в коде Морзе (определенном в строке в верхней части кода) void loop () {// Цикл через строку и получение каждого символа по одному, пока не закончится достигнуто для (int i =0; i  
КОД-2 - ДЛЯ ПРИЕМНИКА Arduino
 int sensorPin =0; // выбираем входной контакт для ldrint sensorValue =0; // переменная для хранения значения, поступающего от датчика int a, f; // flagsvoid setup () {Serial.begin (9600); // устанавливает последовательный порт для связи} void loop () {sensorValue =analogRead (sensorPin); // считываем значение с датчика // Serial.println (sensorValue); if (sensorValue> 1000) // вычисляем количество точек и тире {for (int i =0; i <=13; i ++) {sensorValue =analogRead (sensorPin); если (sensorValue> 1000) {a ++; // подсчет количества точек и тире в задержке символа (200); } else {f ++; // подсчет количества пробелов в точках и тире delay (200); }}} // Serial.print ("a =" + a); // Serial.println ("f =" + f); // Serial.println (); / * * Проверка набора точек, тире и пробелы * / if (a ==4 &&f ==10) {Serial.print ("a");} if (a ==6 &&f ==8) {Serial.print ("b");} если (a ==8 &&f ==6) {Serial.print ("c"); } if (a ==1 &&f ==13) {Serial.print ("e");} if (a ==2 &&f ==12) {Serial.print ("i");} if (a ==10 &&f ==4) {Serial.print ("j");} if (a ==7 &&f ==7) {Serial.print ("g");} if (a ==9 &&f ==5) {Serial.print ("o");} if (a ==3 &&f ==11) {Serial.print ("s");} f =a =0; delay (200); } 

Изготовленные на заказ детали и корпуса

Схема


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

  1. Руководство по лазерной маркировке
  2. Лазерная указка
  3. Полупроводниковый лазер
  4. Сканер штрих-кода
  5. Ракета с лазерным наведением
  6. Интерактивный лазерный проектор с использованием датчиков Zigbee
  7. Межплатное общение
  8. Робот, управляемый жестами, использующий Raspberry Pi
  9. Декодер DTMF с использованием только Arduino
  10. 4 преимущества использования Low Code в промышленном производстве