Relógio
Projeto Sensor de Temperatura

O objetivo deste case, é permitir coletar a temperatura e humidade do local, armazenando e mostrando no relógio.

vista do sensor de temperatura e humidade já montado

Para o desenvolvimento.

O desenvolvimento deste hardware, foi composto de 3 Etapas:

Mecânica

A confecção da caixa plástica, desenvolvida em ABS, e impressa na impressora 3D. Permite a incorporação de um display 16×2.

O projeto da caixa plástica pode ser obtido através do site grabcad.

https://grabcad.com/library/box-arduino-1

Caixa superior

Sendo a segunda parte a base do projeto.

Base do case

Eletrônica

A eletrônica deste projeto é bem simples.

São poucas peças e com ligações elétricas muito simplificadas.

Display Lcd 16x2 1602 Fundo Verde
Display LCD 16×2

Usamos em nosso software um display 16×2 com I2C incorporado.

Display Lcd 16x2 1602 Backlight Azul Com Modulo I2c Arduino

I2C incorporado no LCD

O uso deste simplifica as ligações elétricas.

Para controlar o lcd, utilizamos um arduino nano.

 Placa Nano V3 Pino Soldado + Cabo Usb Para Arduino Nano


Usamos para simplificar e auxiliar uma base do arduino nano.

Shield Adaptador Base P/ Expansão Arduiino Nanno V3.0

Shield Adaptador Base  arduino nano

Quando montado, fica assim:

Arduino nano + base.

A fixação da base necessita de prévia furação na base, porem, após a furação os chanfros das conexão já estarão disponíveis.

Para coletarmos a temperatura e humidade, utilizamos um sensor DHT22, conforme ilustração abaixo:

Projeto sensor de temperatura e humidade com display LCD

PINOUT do sistema

  • A2 – Sensor de Temperatura
  • A4 – SDA do I2C
  • A5 – SCL do I2C
  • 5V<->5V (i2c e Sensor de temperatura)
  • GND<-> GND (i2c e sensor de temperatura)

Software

Todo o projeto está armazenado no GIT, no seguinte repositório

https://github.com/MarceloMaurin/relogio

Software Arduino

O Software do arduino pode ser obtido na pasta Arduino/Sensor/

Dependencias

O Projeto deve ser compilado com a lib LiquidCrystal_I2C.h e o SimpleDHT.h.

Imagem do código já com o fonte do sensor.

Como funciona?

O Sensor joga na porta serial as informações de temperatura e humidade constantemente.

Debug da porta serial

Desta forma é possível capturar pelo lazarus os valores e mostrar em interface própria.

Software PC

O Software para pc foi desenvolvido em Lazarus.

Esta na pasta relogio/relogioX86 para windows e relogio/relogioL86 para linux.

Tela de captura de Temperatura e Humidade

Já a parametrização pode ser baixada setada em Devices IoT.

Existem versões do Software para Linux/Windows/Mac/Linux ARM.

Instalador

O instalador pode ser visto em relorio/instalador

Para mac o instalador fica em relogio/relogiomac/instalador

Documentação

Documentação completa do projeto pode ser vista em:

http://maurinsoft.com.br/index.php/projeto-relogio/

Relógio Sem categoria
CASEMOD em PC

A algum tempo eu montei um projeto chamado displaypc, que nada mais é um casemod para desktop.

Segue foto do Nextion montado.

Nextion montado

Neste casemod, eu incluo uma tela touch screen, que entre outras coisas permite a integração com uma tela nextion.

Tela Lcd Ihm Nextion 3.2  Tft 400x240 Touch Serial Arduino
Tela Nextion

Nele eu usava um nextion de 3.2 polegadas, ligado diretamente ao meu PC, onde montei um casemod para meu workstation.

O Projeto é constituído de 3 etapas:

Impressão 3D

Segue o link da caixa plástica para impressão:

https://grabcad.com/library/5-inch-pc-cabinet-slap-w-nextion-display-1

Nela imprimimos um suporte, que será colocado no lugar das baias de 5 polegadas. No caso ocupará duas das baias de 5 polegadas.

Eletrônica

Por fim usaremos um eletrônica especifica para fixar os dispositivos.

Primeiramente, usaremos uma placa PCI USB, como essa.

Placa Pci Via Com 5 Portas Usb 2.0 Dp-52m

Placa Pci Via Com 5 Portas Usb 2.0 Dp-52m

Percebam que existem 4 slots usb para fora da maquina, e um para dentro.

Conectaremos neste interno um USB TTL, conforme figura abaixo:

Adaptador Usb Ttl Serial Pl2303 5v Rs232 P/ Arduino

Adaptador Usb Ttl Serial Pl2303 5v Rs232 P/ Arduino

Faremos a ligação, conectando o TX do USB no RX do Nextion, e o RX do USB no TX do Nextion.

As conexões de alimentação, ficam assim:

O GND <-> GND e 5V <-> 5V (USB <-> Nextion);

Pronto, finalizamos toda a ligação elétrica.

Software

Muitos não acreditam, mas o software é sempre a parte mais dificil do projeto. Inclusive esta não terminado.

O protocolo do Nextion pode ser visto a partir deste link:


Depois de bater bastante cabeça eu comecei a entender o projeto.

Primeiro montei um projeto simples, que chamei de displaypc.HMI.

O projeto com extensão HMI, é o padrão do software do nextion, que desenhamos as telas;

A montagem da tela. é muito semelhante as que os programadores usam no Delphi, Visual Studio ou Android Studio.

Então se você usa qualquer uma destas RADS não terá problema em desenvolver neste editor.

Voce pode baixar o Nextion Editor neste link:

O projeto do displaypc.HMI, pode ser baixado no meu git:

https://github.com/MarceloMaurin/relogio.git

O Projeto do Relógio contem vários módulos, mas vc pode baixar os códigos do HMI, dentro da pasta Nextion

Exemplo de Código em Lazarus

Montei um pequeno exemplo em Lazarus que interage com o projeto do displaypc.HMI

Neste tópico vou falar um pouco sobre o programa que montei para testar.

O projeto esta dentro da pasta teste do git.

relogio\teste\lazarus

E pode ser chamado pelo Lazarus 2.0, conforme figura abaixo:

Neste pequeno exemplo faço a integração com lazarus do display Nextion, apresentando como o protocolo do mesmo funciona.

No fragmento abaixo, chamo a page com indice 1.

LazSerial1.WriteData(‘page 1’+#255+#255+#255);

Podemos perceber, que ao final, sempre será necessário incluir o FF FF FF, pois é padrão do protocolo.

Neste pequeno exemplo, fazemos a barra de progresso, sair de 0 ate 100%

procedure TForm1.Button5Click(Sender: TObject);
var
a : integer;
begin
for a:= 0 to 100 do
begin
LazSerial1.WriteData(‘val02.val=’+inttostr(a)+#255+#255+#255);
LazSerial1.WriteData(‘prog02.val=’+inttostr(a)+#255+#255+#255);
sleep(100);
end;
end;

Abaixo, vemos a tela, de status, onde aparece os componentes prog02 e val02.

Em breve falarei mais sobre o casemod, apresentando o exemplo do fonte.

Vida longa e prospera!

Relógio
Relógio 2.2.5 – Ponto

Nesta versão já disponibilizamos a leitura e marcação de ponto.

Onde as informações do ponto ficam na janela Working, que pode ser acessada pressionando o botão direito do mouse no icone do relógio.

Menu de opções do Relógio

A Opção Show Working, permite incluir registro de passagem de ponto, que serão gravados em arquivos diários com extensão .dat (DWrkddmmyy.dat)

TIMESTART:16:08:01
TIMESTOP:16:17:56
TIMELAP:00:00:00

O Campo TIMESTART é o Tempo da primeira marcação

O TimeStop o tempo da parada. (Ultima marcação)

O Sistema permite múltiplas paradas, sendo que ao identificar uma retomada, pegara o período entre o TIMESTOP e a presente marcação e acumulará em TIMELAP, Deixando o timestop em branco novamente.

Trabalho

Na Tela Setup Work, marcaremos a Jornada diária.

Atividades e Trabalho

Na tela abaixo, identificamos que o inicio da atividade se dá pelo botão Start, ao lado do item In/Out Working.

Atividades e trabalho

O display de trabalho somente irá surgir se o inicio de um dia for marcado.

Relógio Sem categoria Solidworks
Relógio esta evoluindo

Inicialmente o relógio surgiu como um aplicativo para Win/MAC/Linux.

Logo em seguida, foi criado um device para permitir leitura da temperatura e humidade.

Agora, criamos um IOT que lê alem de temperatura, MP3, permitindo acumular a função de despertador e marcação de ponto.

Primeiro protótipo do hardware

Neste primeiro protótipo podemos ver que a “casca” foi desenvolvida com palitos de sorvete, justamente para prova de conceito.

Logo em seguida Melhoramos um pouco o hardware, e principalmente o software.

Ganhando mais funcionalidades e principalmente um Arduino Mega, que permite maior memória e capacidade de processamento.

Segundo protótipo funcional

Já com dois displays, implementei várias melhorias no relógio.

Projeto já impresso, com planejamento em Solidworks
Relógio
08/06/2019

Implementação do primeiro protótipo do relógio para MAC.

Ficou pronto apenas a contagem do tempo.

Foi necessário desenvolver um novo projeto. Pois algumas das features do projeto windows, não serão compatíveis com o MAC.

Tela de contagem do Tempo

Disponibilizei o projeto no GIT e em breve lançarei um instalador.

maurinsoft.com.br