Comunicação em código Morse usando módulo laser (ambos)
Componentes e suprimentos
| × | 2 | ||||
| × | 2 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Aplicativos e serviços online
|
Sobre este projeto
Código Morse
Código Morse significa converter os símbolos alfanuméricos (ou seja, alfabetos e números) em pontos e travessões. Cada símbolo possui uma disposição diferente de pontos e traços que os tornam únicos. O código Morse é usado para enviar os dados secretos ou os dados codificados. Neste projeto, criei a seção de transmissor e receptor da Comunicação em Código Morse. A singularidade neste projeto de diferentes projetos de comunicação em código Morse é que o algoritmo da seção receptora é realmente simples do que qualquer outro algoritmo.
Etapa 1:Seção do transmissor
A seção do transmissor é usada para enviar os dados de entrada por meio do LASER.
Hardware necessário:-
- Arduino Uno
- TTransmissor LASER
- Placa de ensaio
- Fios de jumpers
Conexões:-
Conecte o pino positivo do LASER com o pino 13 da entrada digital no Arduino (conforme programado no código). Conecte o GND do LASER com o GND do Arduino.
Programa:-
O Algoritmo do Código é o seguinte:-
- 1. Os dados que devem ser transmitidos são mantidos como entrada e armazenados por um array de caracteres.
- 2. O pino do LED que deve ser transmitido está definido.
- 3. A velocidade do código Morse está definida.
- 4. Pontos e travessões são definidos.
- 5. O caractere inserido é verificado através da caixa do interruptor e os correspondentes ALTO e BAIXO do LASER são transmitidos.
Etapa 2:Seção do receptor
Os dados codificados que são enviados pelo transmissor são recebidos e processados, depois são exibidos no Monitor Serial.
Hardware necessário:-
- 1. Arduino Uno
- 2. LDR
- 3. Resistor - 10 K ohm
- 4. Tábua de pão
- 5. Jumper Wires
Conexões:-
Conecte uma extremidade do LDR com 5 V de alimentação do Arduino. Conecte a outra extremidade do LDR com o resistor de 10K ohm e também com a entrada analógica A0. Conecte a outra extremidade do resistor com o GND do Arduino.
Programa:-
O algoritmo usado na seção receptora é o algoritmo mais fácil do que qualquer outro disponível na internet. Este algoritmo está cheio de observações.
- 1. Quando não há LASER caindo no LDR, então o valor do LDR será menor que 1000. Se o valor estiver passando de 1000, mesmo se o LASER estiver aceso no LDR, então você precisa cobrir o LDR para se proteger de luz entrando nele. Aqui, o LDR é coberto por uma cúpula feita de papel quadriculado preto.
- 2. Quando o LASER atinge o LDR, o valor vai além de 1000 e então entra em um loop.
- 3. Agora quantize os valores, ou seja, se o valor ultrapassar 1000, atribua-o como '1', caso contrário, atribua-o como '0'.
- 4. Dentro de um loop, calcule o número de '1's e' 0's. Defina os contadores 'a' e 'f'. Conte o número de '1's e armazene-o em' a 'e, da mesma forma, conte o número de' 0's e armazene-o em 'f' respectivamente.
- 5. Agora verifique os valores específicos de 'a' e 'f' respectivamente. Cada personagem terá um conjunto diferente de 'a' e 'f'. O valor correspondente será exibido.
Limitação:-
O programa que acompanha o código é usado para imprimir os caracteres específicos. Você pode aprimorar o código ainda mais pelo uso de combinações e exibir todo o conjunto de caracteres. O objetivo principal do código é fazer com que você entenda o algoritmo e funcione.
Código
- CÓDIGO-1- PARA CONTROLE DO EMISSOR DE LASER
- CÓDIGO 2 - PARA O FIM DO RECEPTOR
CÓDIGO-1- PARA CONTROLAR O EMISSOR DE LASER Arduino
int led13 =13; // pisca um led na saída 13 / * Defina a velocidade de seu código Morse Aqui estão os elementos do código de proporção:Comprimento do traço =Comprimento do ponto x 3 Pausa entre os elementos =Comprimento do ponto * / int dotLen =200; // comprimento do código Morse 'dot'int dashLen =dotLen * 3; // comprimento do código Morse 'traço'int elemPause =dotLen; // comprimento da pausa entre os elementos de um caractere Spaces =dotLen * 3; // comprimento dos espaços entre caracteresint wordPause =dotLen * 7; // duração da pausa entre wordsvoid setup () {// inicializa o pino digital como uma saída para luzes LED. pinMode (led13, OUTPUT); } // Crie um loop das letras / palavras que você deseja produzir em código Morse (definido na string no topo do código) void loop () {// Faça um loop pela string e obtenha cada caractere um de cada vez até que o final seja alcançado por (int i =0; iCÓDIGO 2 - PARA O FIM DO RECEPTOR Arduino
int sensorPin =0; // selecione o pino de entrada para ldrint sensorValue =0; // variável para armazenar o valor proveniente do sensorint a, f; // flagsvoid setup () {Serial.begin (9600); // define a porta serial para comunicação} void loop () {sensorValue =analogRead (sensorPin); // ler o valor do sensor // Serial.println (sensorValue); if (sensorValue> 1000) // calcular o número de pontos e traços {for (int i =0; i <=13; i ++) {sensorValue =analogRead (sensorPin); if (sensorValue> 1000) {a ++; // calculando o número de pontos e traços no atraso do caractere (200); } else {f ++; // calculando o número de espaços em pontos e traços delay (200); }}} // Serial.print ("a =" + a); // Serial.println ("f =" + f); // Serial.println (); / * * Verificando o conjunto de pontos, traços e espaços * / if (a ==4 &&f ==10) {Serial.print ("a");} if (a ==6 &&f ==8) {Serial.print ("b");} if (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; atraso (200); }
Peças personalizadas e gabinetes
Esquemas
Processo de manufatura
- Guia para marcação a laser
- Ponteiro Laser
- Laser semicondutor
- Scanner de código de barras
- Míssil guiado por laser
- Projetor laser interativo usando sensores Zigbee
- Comunicação Conselho a Conselho
- Robô controlado por gestos usando Raspberry Pi
- Decodificador DTMF usando apenas Arduino
- 4 Benefícios do Uso de Low Code na Manufatura Industrial