Índice:

UCL - IIoT - Farmers Market: 7 etapas
UCL - IIoT - Farmers Market: 7 etapas

Vídeo: UCL - IIoT - Farmers Market: 7 etapas

Vídeo: UCL - IIoT - Farmers Market: 7 etapas
Vídeo: The Secret To PERFECT Greenhouse Crops | Greenhouse Automation 2024, Julho
Anonim
UCL - IIoT - Mercado de Agricultores
UCL - IIoT - Mercado de Agricultores

A carteira Farmersmarket pode ser usada em feiras, mercados de agricultores ou outros encontros onde as mercadorias são vendidas.

A carteira Farmersmarket é uma máquina de contagem de moedas, feita para permitir uma rápida visualização do conteúdo total de uma caixa com moedas. A carteira do farmermarket também fará o upload do total para um servidor programado via Node-red.

É feito por três alunos da University College Lillebælt, na Dinamarca. Desde nosso projeto anterior, o classificador de moedas, aprendemos muitas coisas novas que iremos incorporar à construção. Decidimos dispensar a classificação das moedas e, em vez disso, fazer a máquina contá-las, depositando-as em uma caixa de moedas comum.

A carteira consiste em cinco slides ou slots, um para cada tipo de moeda. Quando uma moeda é colocada no slot adequado, ela cai passando por um refletor, que envia um sinal ALTO para o arduino. Usaremos o sinal para somar o valor das moedas ao total contado, exibi-lo no display externo e enviar o novo total para um servidor. Assim que o servidor receber o total, ele atualizará uma IU encontrada online mostrando o novo total.

Descrição Uma caixa com cinco slots para moedas levando a cinco corrediças internas individuais, uma para cada tipo de moeda: 1kr, 2kr, 5kr, 10kr, 20kr

Um display LCD mostrando o total de dinheiro colocado na parte superior da caixa.

A parte superior da caixa é protegida por escotilhas. Levantar a parte superior removerá o invólucro do arduino junto com a parte superior contendo o LCD, slots para moedas, refletores etc., deixando apenas a caixa onde as moedas são depositadas.

Componentes e materiais - Ferramentas e equipamentos para fazer uma caixa (pode ser papelão ou madeira)

- Arduino Mega 2560

- 30 jumperwires

- 5 x LDR "Sensor de luz"

- 5 x resistores de 220 ohms

- 5 resistências de 10k ohm

- 5 x LEDs brancos

- Módulo LCD 16x02

- Moedas

Código em Arduino

Conforme mencionado anteriormente, este projeto se origina de um projeto anterior que fizemos há cerca de oito meses (https://www.instructables.com/id/Coin-Sorting-Machine/). Por causa disso, podemos reutilizar uma grande parte do código no arduino, embora haja algumas alterações menores nele. Como você verá, o código é bastante simples, o que qualquer pessoa com um pouco de experiência com o Arduino deve ser capaz de entender.

Node-RED Node-RED é a ferramenta que usaremos para obter os dados do arduino e para o seu computador e, posteriormente, para a internet, se for do seu interesse. Outro motivo importante para usar o Node-RED é a capacidade de apresentar os dados do Arduino de uma maneira fácil de entender, para pessoas que não têm nenhuma experiência de programação / codificação com Arduino e Node-RED.

Banco de dados Usando Wampserver, podemos armazenar nossos valores do Arduino em um banco de dados. Com o Wampserver é possível criar e alternar seu próprio banco de dados como você quiser, usando o phpMyAdmin para administrar o MySQL. No nosso caso, temos seis valores que precisamos armazenar (um para cada tipo de moeda e um para o resultado) e, portanto, criamos seis colunas nas quais cada valor pode ser armazenado.

Etapa 1: Como funciona?

Como funciona?
Como funciona?

Em uma mansão mais detalhada, vamos agora explicar como nosso sistema funciona.

Como você verá no fluxograma, a primeira coisa que define o processo é quando uma moeda é colocada em seu slot correto.

O sensor de luz LDR perceberá a quantidade reduzida de luz, quando a moeda passar pelo sensor, o que acionará o programa Arduino para incrementar a variável "Antal" (Número de) com um, pois agora existe uma moeda na máquina. Ao mesmo tempo, o valor da moeda é adicionado à variável "resultado". "resultado" será exibido no LCD com seu novo valor.

Os novos valores de "Antal" e "resultado" são enviados para o Node-RED, no qual o painel se atualizará com esses valores. Por fim, o Node-RED envia os valores para o nosso banco de dados.

E repita.

Etapa 2: fazer uma caixa

Desta vez, estamos usando o Illustrator para projetar nossa caixa. Com um cortador a laser, fomos para criar precisamente esta caixa e os recursos que são necessários para o nosso projeto. No final, cabe a você decidir como fazer a caixa perfeita para o seu projeto.

Etapa 3: Adicionando Arduino

Adicionando Arduino
Adicionando Arduino

É hora de implementar o Arduino na caixa. Isso pode ser bastante difícil, pois o sensor pode se comportar de maneira imprevisível. (Novo) Nesta etapa, mudamos o sensor que estamos usando, devido à falta de confiabilidade desses sensores mencionada anteriormente (tcrt 5000). Em vez disso, escolhemos um sensor LDR mais simples (resistor dependente de luz). A saída deste sensor é um valor analógico, que muda dependendo da quantidade de luz que atinge o próprio sensor.

Etapa 4: Código Arduino

Nesta etapa, estamos colocando nosso foco no software. O código do Arduino é semelhante a este:

const int sensorPin1 = 3; // Sensor TCRT-5000 que está conectado ao pino nr. 2 int sensorState1 = 0; // Contém o valor do sensor (alto / baixo)

int Antal10 = 0; // Variável que armazena a quantidade de moedas que foram colocadas na máquina interna

Resultat = 0; // Variável que armazena o valor combinado de todas as moedas colocadas na máquina

void setup () {Serial.begin (9600); }

loop vazio () {int sensorState1 = analogRead (sensorPin1); // Lê o estado do sensor

if (540 <sensorState1 <620) {// Quando o valor de saída dos sensores está entre 540 e 620

Antal10 + = 10; // - há uma moeda passando pelo sensor, que bloqueia alguma luz

resultat + = 10; // - e o sensor lerá um nível inferior de luz}

Serial.print (Resultat);

Serial.print (","); // Separa as variáveis com uma vírgula, que é necessária ao ler os valores das variáveis no Node-RED

Serial.println (Antal10); // - e também necessário quando esses valores devem ser armazenados no banco de dados

atraso (100); }

Este código foi escrito para apenas um sensor, para facilitar a leitura.

Código completo:

Etapa 5: Node-RED

Node-RED
Node-RED
Node-RED
Node-RED

Quando o código do Arduino está rodando como deveria, você pode começar a programar o Node-RED, que vai atuar como o link intermediário entre o Arduino e o banco de dados e como uma exibição visual de como a máquina está funcionando. A programação do Node-RED consiste em usar nós com diferentes funções, e colocar os parâmetros certos para que esses nós funcionem corretamente.

Quando nossos dados chegam ao Node-RED, eles são enviados para duas funções de divisão diferentes. Uma dessas funções envia os dados agora divididos para o banco de dados. O outro envia os diferentes valores de dados para cada um dos nós do painel, que agora deve estar visível no painel.

Conforme mencionado anteriormente, temos seis valores que devem ser tratados. Com os recursos de painel do Node-Red, somos capazes de exibir esses valores, como você verá na imagem à direita no topo da Etapa 3.

Código Node-RED:

Etapa 6: Banco de dados

Base de dados
Base de dados

Agora vamos usar um banco de dados para armazenar os valores. Com o Wampserver é possível usar o phpMyAdmin para administrar o MySQL e fazer seu próprio banco de dados, usando um servidor local para atender às suas necessidades específicas.

Primeiro, ao fazer um banco de dados (farmer_market) do zero, você precisa fazer uma tabela (mont_tabel), na qual você armazena seus valores. Dependendo da quantidade de dados que você tem e de como precisa ordená-los, você pode fazer quantas tabelas precisar. Porque precisamos armazenar seis valores diferentes e, portanto, precisamos de seis colunas, uma para cada valor, em nossa tabela. Na imagem acima você pode ver nosso banco de dados.

Quando nossos dados chegam ao Node-RED, eles são divididos por uma função de divisão e os dados now são enviados para o banco de dados.

Etapa 7: Avaliação

Em primeiro lugar, queremos mencionar que fazer a caixa de madeira em vez de papelão torna toda a configuração física muito mais confiável e, portanto, recomendamos fazê-lo.

Mudar os sensores de um TCRT-5000 para um sensor de luz LDR simples deu muito mais estabilidade, pois os sensores podem ler rapidamente quando uma moeda passa por ele. Ao trabalhar com um TCRT-5000, há muitos fatores que precisam ser levados em consideração para que o sensor funcione como você gostaria.

Conectar o sistema a um banco de dados, e ser capaz de apresentar visualmente seus dados de uma forma que qualquer pessoa sem nenhum conhecimento prévio desse projeto, seja capaz de entender o que está acontecendo, parece dar mais valor ao projeto.

Recomendado: