Índice:
- Etapa 1: Usando Processing.serial
- Etapa 2: entender a classe serial
- Etapa 3: classe serial do Arduino
- Etapa 4: construir um controlador de segmento GUI 7
Vídeo: Conectando o processamento e o Arduino e o controlador de 7 segmentos e servo GUI: 4 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:36
Para alguns projetos que você fez precisa usar o Arduino, pois fornece uma plataforma de prototipagem fácil, mas exibir gráficos no monitor serial do Arduino pode demorar muito e é até difícil de fazer. Você pode exibir gráficos no Arduino Serial Monitor, mas os gráficos não são a única coisa que você precisa exibir. Todos os objetos interativos como controles deslizantes, botões, programas com saída 2D, 3D, PDF ou SVG e você também pode criar animações facilmente. O modo de programação padrão para processamento é Java, mas você pode alternar para Android, p5.js, REPL, CoffeeScript e JavaScript. Neste Instructable, no entanto, usaremos o modo de programação Java.
Todo o conteúdo e código também está disponível no meu github aqui.
Etapa 1: Usando Processing.serial
Código de Processamento
As primeiras duas linhas de código serão
import processing.serial. *; Serial myPort;
Aqui na primeira linha estamos importando a biblioteca - processando e na segunda linha estamos criando um objeto da classe Serial chamado myPort, você pode nomeá-lo como quiser seguindo as regras de nomeação de um identificador.
No processamento, temos void setup () e void draw () onde void é o tipo de retorno da função, você também pode alterá-lo para int setup () e int draw () ou outro tipo de dados de sua preferência, mas você precisará retornar um valor que tem o mesmo tipo de dados que você usa antes das funções.
em setup () escrevemos as instruções que precisamos executar uma vez, enquanto em draw () escrevemos as instruções que precisamos executar várias vezes. As duas linhas de código mencionadas acima devem ser escritas acima de void setup () porque elas precisam ter acesso global.
No void setup () iremos inicializar o objeto myPort.
void setup () {
tamanho (800, 800);
myPort = novo Serial (este, "COM18", 9600);
}
O tamanho da linha (800, 800); define o tamanho da tela de 800 pixels por 800 pixels.
A palavra-chave new na segunda linha é usada para reservar espaço para o objeto na memória, o argumento this é uma variável de referência que se refere ao objeto atual. O argumento COM18 é a porta do Arduino conectada, precisamos disso, pois estaremos transportando os dados via interface serial. O número 18 pode ser diferente no seu caso, você pode encontrá-lo em Ferramentas> Porta no IDE do Arduino e 9600 é a taxa de transmissão, você pode alterar isso no Arduino e no processamento.
Etapa 2: entender a classe serial
O construtor para Serial
Serial (pai, portName, baudRate, paridade, dataBits, stopBits)
Argumentos:
pai: normalmente use "este"
baudRate (int): 9600 é o padrão
portName (String): nome da porta (COM1 é o padrão)
paridade (caractere): 'N' para nenhum, 'E' para par, 'O' para ímpar, 'M' para marca, 'S' para espaço ('N' é o padrão)
dataBits (int): 8 é o padrão
stopBits (float): 1.0, 1.5 ou 2.0 (1.0 é o padrão)
Métodos importantes:
- myPort.available () - retorna o número de bytes disponíveis.
- myPort.clear () - esvazia o buffer e remove todos os dados armazenados nele.
- myPort.read () - Retorna um número entre 0 e 255 para o próximo byte que está esperando no buffer.
- myPort.readString () - Retorna todos os dados do buffer como String ou nulo se não houver nada disponível.
- myPort.write ("test") - Grava bytes, chars, ints, bytes , Strings na porta serial.
- myPort.stop () - interrompe a cominicação de dados na porta.
Etapa 3: classe serial do Arduino
Você não precisa importar a classe serial no Arduino antes de usá-la.
No Arduino, existem 2 funções chamadas setup () e loop (). A configuração é executada apenas uma vez, mas o loop é executado várias vezes. Em setup (), precisamos escrever, use o método begin () para iniciar a comunicação serial. No Arduino, ao contrário do processamento, não precisamos mencionar a porta como os argumentos do método begin (), pois já especificamos a porta durante o upload do esboço no Arduino.
Portanto, o setup () ficará assim:
void setup () {
Serial.begin (9600); // inicia a comunicação serial
}
9600 aqui especifica a taxa de transmissão que também mencionamos no arquivo de processamento. Para uma comunicação adequada, as taxas de transmissão devem ser iguais ou você pode ver a saída serial como algo sem sentido.
Agora vamos ver a parte do loop (). Esta parte do código é executada várias vezes. Se quisermos ler alguns dados pela porta, usaremos o método Serial.read (). Esta função retorna null se nenhum dado estiver disponível, portanto, chamaremos esse método apenas quando tivermos alguns dados disponíveis no fluxo serial.
Para verificar se há algum dado disponível, usaremos o método Serial.available (). Se retornar um valor maior que 0, alguns dados estarão disponíveis.
Portanto, a parte loop () será semelhante a esta:
void loop () {
if (Serial.available ()> 0) {// se alguns dados estiverem disponíveis na porta serial
estado char = Serial.read (); // leia o valor
// declarações if ou alternar entre maiúsculas e minúsculas
}
}
Agora podemos usar se a escada ou se houver muitos resultados possíveis, podemos usar o caso de switch também para o estado variável.
Etapa 4: construir um controlador de segmento GUI 7
Os arquivos estão anexados aqui. Nota: Para o processamento, você também precisará instalar a biblioteca control p5 que usei para criar os botões interativos da GUI.
Números PIN
7 segmentos (em ordem alfabética) referem-se à imagem
a - pino digital 2
b - pino digital 3
c - pino digital 4
d - pino digital 5
e - pino digital 6
f - pino digital 7
g - pino digital 8
dp - pino digital 9
Todo o conteúdo e código também está disponível no meu github aqui
Recomendado:
Conectando o Arduino WiFi à nuvem usando ESP8266: 7 etapas
Conectando Arduino WiFi à nuvem usando ESP8266: Neste tutorial, vamos explicar como conectar seu Arduino à nuvem IoT através de WiFi. Vamos configurar uma configuração composta de um Arduino e um módulo WiFi ESP8266 como um IoT Thing e torná-lo pronto para se comunicar com a nuvem AskSensors.L
CONECTANDO VÁRIOS SENSORES A UMA PORTA SERIAL ARDUINO UNO: 4 etapas
CONECTANDO VÁRIOS SENSORES A UMA PORTA SERIAL ARDUINO UNO: Neste tutorial, iremos expandir uma única porta serial Arduino UNO UART (Rx / Tx) para que vários sensores Atlas possam ser conectados. A expansão é feita usando placa de expansão de porta serial 8: 1. A porta do Arduino é ligada ao expansor após o
Conectando o motor ao Arduino usando L293D: 3 etapas
Conectando o motor ao Arduino usando L293D: Um motor é o bloco de construção básico da robótica e, se você está aprendendo o Arduino, aprender a conectar um motor a ele é muito importante. Hoje faremos isso usando L293D ic. Um IC de driver de motor L293D é realmente importante. Caso contrário, será
Conectando VK16E GPS com Arduino UNO: 3 etapas
Conectando VK16E GPS com Arduino UNO: Este é um Instructable simples para as pessoas que gostariam de saber como conectar e usar seu módulo GPS com um Arduino. Estou usando um Arduino UNO Shield #Hackduino e um módulo VK16E GPS. informações consulte a folha de dados
Conectando vários botões a um único pino no Arduino: 4 etapas
Conectando vários botões a um único pino no Arduino: Olá a todos, Quando seus projetos do Arduino superaram os LEDs piscantes, você pode precisar de alguns pinos extras. Vou te mostrar um truque que você pode usar onde você pode ter vários botões, todos conectados ao mesmo pino analógico