Desenvolvimento Arduino

Apesar da plataforma parecer muito simples, a criação de aplicações complexas e estáveis  trata-se de um estado de arte.

Com mais de 4 anos de experiencia em desenvolvimento em arduino, hoje tenho diversos casos de sucesso.

Entre os dispositivos que consigo interfacear, estão:

  • RFID (smartcard sem contato)
  • Biometria (Sensor de biométrico de digital)
  • RF433
  • RS232
  • RS485
  • Telas Touch Screen
  • Banco de dados Mysql, utilizando acesso nativo
  • Socket client (UDP/TCP)
  • Socket Server (UDP/TCP)

Exemplos de projeto realizado

Projeto de Robô desenvolvido com Arduino e sensor de proximidade

Vídeo no youtube:

Vídeo parte I

Vídeo parte II

Exemplos de Código em Delphi

Analista programador com 16 anos somente com DELPHI em ERPs diversos.

20 anos com programação.

Vivencia em Delphi e Lazarus (delpli clone linux)

Versões que trabalhei Delphi 3-7 (15 anos), XE8 pequenos projetos

Ampla experiencia em banco de dados Oracle, MS Sql server, Mysql.

Desenvolvimento em diversas empresas como IG, Agencia Estado, Telemática, entre outras.

Visão de documentação em ferramentas GED Microsoft Sharepoint

Ampla experiencia em Office 365,

  • CVS com tortoise
  • Programação Socket , Threads
  • Web usando CGI Delphi
  • Desenvolvimento integração com Hardware diversos
  • Ambientes Cliente Server/3 Camadas (midas)

Vivencia em ambiente ARM e Linux, alem claro do windows.

 

  • Geralmente destinadas ao desenvolvimento de ERPs
  • captura de informações de dispositivos de I/O (vídeo) (fonte)
  • Integração com hardware (arduino ou outros disposivos) (vídeo) (fonte)

Vídeo de totem criado em Lazarus para Raspberry PI
Hardware Montado

Software interativo

 

Desenvolvimento de Biometria usando sensor microsoft em linux

Leitura de dados Industriais na porta USB em windows

 

Projeto ERP Jornada

 

Ferramenta de Gerenciamento de Banco de dados Mysql

Ajustando informações na tela com Python

from tkinter import *
class Login:
 def __init__(self,master):
 self.master = master
 self.master.title("acesso ao sistema")
 Label(self.master,text="Usuario e Senha").grid(row=1, column=1,columnspan=2, pady=4)
 Label(self.master,text="Usuario:").grid(row=2,column=1,pady=4)
 self.usuario = Entry(self.master,width=10)
 self.usuario.grid(row=2,column=2)
 Label(self.master,text="Senha:").grid(row=2,column=1,pady=4)
 self.senha = Entry(self.master,width=10, show="*")
 self.senha.grid(row=3,column=2)

root=Tk()
Login(root)
root.mainloop()

Criando Aplicação TK em Python

import tkinter as tk
class App(tk.Frame):
 def __init__(self,master):
 tk.Frame.__init__(self,master)
 self.pack()

#cria menu
 self.frame = tk.Frame(self)
 self.frame.pack()
 self.menu = tk.Menu(master)
 self.menuArquivo = tk.Menu(self.menu)
 self.menuArquivo.add_command(label="Item1",command=self.onclickItem1())
 self.menuArquivo.add_command(label="Item2")
 self.menuArquivo.add_command(label="Item3")
 self.menu.add_cascade(label="consulta",menu=self.menuArquivo)
 master.config(menu=self.menu)

#self.MontaMenu() 
 self.criarbotoes()
 self.crialabel()
 self.entradadados()
 self.BotaoSair()
 
 def onclickItem1(self):
 print("ok")
 
 def criarbotoes(self):
 self.btCriar = tk.Button(self)
 self.btCriar["text"]="Botao1"
 self.btCriar.pack(side="top")

def crialabel(self):
 self.label = tk.Label(self)
 self.label["text"]="label de dialogo"
 self.label.pack(side="top")
 
 def entradadados(self):
 self.edit = tk.Entry(self)
 self.edit.pack(side="top")

def BotaoSair(self):
 self.btSair = tk.Button(self, text="sair", fg="red", command=root.destroy)
 self.btSair.pack(side="bottom")



root = tk.Tk()
#criando a aplicação
minhaAplicacao = App(master=root)
minhaAplicacao.master.title("Exemplo de tela")
minhaAplicacao.master.maxsize(400,300)
minhaAplicacao.master.geometry("400x300")



#inicia a aplicacao
minhaAplicacao.mainloop()

 

 

Exemplo de criacao de formulario em python

Exemplo de python com interface texto

 

import tkinter as tk
class App(tk.Frame):
 def __init__(self,master=None):
 tk.Frame.__init__(self,master)
 self.pack()
 self.criarbotoes()
 self.crialabel()
 self.entradadados()
 self.BotaoSair()
 
 def criarbotoes(self):
 self.btCriar = tk.Button(self)
 self.btCriar["text"]="Botao1"
 self.btCriar.pack(side="top")

def crialabel(self):
 self.label = tk.Label(self)
 self.label["text"]="label de dialogo"
 self.label.pack(side="top")
 
 def entradadados(self):
 self.edit = tk.Entry(self)
 self.edit.pack(side="top")

def BotaoSair(self):
 self.btSair = tk.Button(self, text="sair", fg="red", command=root.destroy)
 self.btSair.pack(side="bottom")



root = tk.Tk()
#criando a aplicação
minhaAplicacao = App(master=root)
minhaAplicacao.master.title("Exemplo de tela")
minhaAplicacao.master.maxsize(400,300)
minhaAplicacao.master.geometry("400x300")



#inicia a aplicacao
minhaAplicacao.mainloop()


Exemplo de Python com Tk

Segue um exemplo de aplicação grafica utilizando TKinter.

 

from tkinter import *
class App(Frame):
 def __init__(self,master=None):
 Frame.__init__(self,master)
 self.pack()
 self.criarbotoes()
 self.crialabel()
 self.entradadados()
 
 def criarbotoes(self):
 self.botao = Button(self)
 self.botao["text"]="Botao1"
 self.botao.pack(side="top")

def crialabel(self):
 self.label = Label(self)
 self.label["text"]="label de dialogo"
 self.label.pack(side="top")
 
 def entradadados(self):
 self.edit = Entry(self)
 self.edit.pack(side="top")

#criando a aplicação
minhaAplicacao = App()
minhaAplicacao.master.title("Exemplo de tela")
minhaAplicacao.master.maxsize(400,300)
minhaAplicacao.master.geometry("400x300")



#inicia a aplicacao
minhaAplicacao.mainloop()

 

Criando aplicação grafica no Python com TKinter

Segue um exemplo de aplicação grafica utilizando TKinter.

 

from tkinter import *
class App(Frame):
 def __init__(self,master=None):
 Frame.__init__(self,master)
 self.pack()
 self.criarbotoes()
 self.crialabel()
 self.entradadados()
 
 def criarbotoes(self):
 self.botao = Button(self)
 self.botao["text"]="Botao1"
 self.botao.pack(side="top")

def crialabel(self):
 self.label = Label(self)
 self.label["text"]="label de dialogo"
 self.label.pack(side="top")
 
 def entradadados(self):
 self.edit = Entry(self)
 self.edit.pack(side="top")

#criando a aplicação
minhaAplicacao = App()
minhaAplicacao.master.title("Exemplo de tela")
minhaAplicacao.master.maxsize(400,300)
minhaAplicacao.master.geometry("400x300")



#inicia a aplicacao
minhaAplicacao.mainloop()

 

Usar o Mysql com python

O Exemplo abaixo é um script simples que consome as informações do banco de dados Mysql.

print("Teste com Banco de Dados Mysql")

print("Teste com Banco de Dados Mysql")

print("Exemplo")

import MySQLdb

con = MySQLdb.connect(db="casadb", user="root", passwd="[suasenha]", host="192.168.1.211")


cur = con.cursor()


sql = "select * from security"


cur.execute(sql)


recset = cur.fetchall()


for registro in recset: print(registro)

Para sua utilização é necessário ter alem do Python na maquina o Mysql-python instalado em seu linux.

 

Exemplo Básico de Programação Python

Segue um exemplo básico comentado sobre uso de Python

#Criado por Marcelo Maurin Martins
#Desenvolvimento de uma rotina de pesquisa em uma lista de dados

Neste fragmento acima, incluímos os comentários sobre o programa

Nomes = [“Marcelo”,”Cleusa”,”Marcella”,”Camille”,”Fernanda”,”Roberta”,”Patricia”,”Carol”]

No segmento acima, criamos um vetor simples, contendo nomes de pessoas.

PNome = input(“Digite o nome que deseja pesquisar:”)

Neste segmento, solicitamos ao usuário informar o nome que deseja pesquisar, este será armazenado na variável Nome

Indice = -1

Criamos a variável Indice, inicializando ela com valor -1

for ref in range(0,len(Nomes)-1):

Criamos um laço for, onde varremos da primeira posição, até a ultima, gerando uma variável ref, que será usada como referencia.

      if(Nomes[ref].upper()==PNome.upper()):
Indice = ref
break

Neste segmento, podemos notar o recuo, que indica que é um bloco do for, também podemos ver que comparamos o conteúdo de Nomes, na posição ref, passando um uppercase (tudo maiúscula).

if (Indice>=0):
print(“Achou o registro %s em %d”,PNome,Indice)
else:
print(“Nao achou nenhum registro”)

Concluindo o código, podemos verificar se o programa encontrou algum registro, informando este na tela.

Este exemplo bem simples, apresenta os argumentos básicos do uso da linguagem Python.