Android Developing Basic4Android & Eclipse Android Module, PCB & Schematic Design with Multi-Sim 11 and Protheus Cad simulator, Firmware Microchip PIC16F887A Developing MikroC, Design 3D Buttons LEDs & Displays for Android Applications with Paintshop Pro, for automation integration for electric automobiles charging control and testing.
2. MOD.AFTEBI.P-077.REV01
2 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
ÍNDICE:
ESTRUTURA .................................................................................................................................... 3
OBJECTIVOS................................................................................................................................................................................3
INTRODUÇÃO À EMPRESA.......................................................................................................................................................3
BREVE EXPOSIÇÃO DO ASSUNTO DESENVOLVIDO........................................................................................................4
PLANO DE ACÇÃO ......................................................................................................................... 5
CORPO DO RELATÓRIO................................................................................................................ 7
CONCLUSÕES……………………………………………………………………...…………….128
BIBLIOGRAFIA E REFERÊNCIAS ............................................................................................. 129
ANEXOS....................................................................................................................................... 130
3. MOD.AFTEBI.P-077.REV01
3 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
ESTRUTURA
OBJECTIVOS
Na Empresa Enforce e na UBI, fui convidado pelos professores do Projecto do Posto
de Carregamento de Veículos Eléctrico, para aprender linguagens de programação
virada para o sistema operativo de Telemóveis e Tablets (Android). Criando uma
aplicação Android e o respectivo Hardware para testes de simulação de carga dos
Veículos Eléctricos visando usar uma ou mais formas de comunicação (USB,
Bluetooth, WiFi) e para possível futura integração no projecto de automação do
Posto de Carregamento.
INTRODUÇÃO À EMPRESA
A Enforce aparece na sequência da empresa João Nuno Serra, LDA constituída em
2001, com sede em Portugal, na Covilhã, sendo o seu principal objectivo dar uma
resposta às necessidades, na área da energia. Projectistas, especialistas em infra-
estruturas eléctricas, telecomunicações e de climatização de edifícios.
4. MOD.AFTEBI.P-077.REV01
4 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
BREVE EXPOSIÇÃO DO ASSUNTO DESENVOLVIDO
Aprendizagem de novas linguagens de programação orientadas para aplicações no
sistema operativo Android para complementar o projecto de automação já em curso
para possível integração no projecto. Usando uma Linguagem de Programação
Basic4Android com o objectivo de criar uma aplicação Bluetooth para comunicar com
micro controlador da Microchip PIC 16F877A através dum Módulo externo Bluetooth
conectado ao porto RS232 com níveis TTL do PIC criando o firmware em Linguagem
Assembly e/ou Linguagem C para o PIC. Este projecto vai ter como objectivo simular
o carregamento dum carro eléctrico. Na prática é um testador de estados de carga
para os técnicos responsáveis da empresa poderem afinar o firmware e detectarem
avarias num posto de carregamento
5. MOD.AFTEBI.P-077.REV01
5 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
PLANO DE ACÇÃO
Posto de Carregamento de Carros Eléctricos
Introdução
Esta imagem mostra a concepção dos postos de carregamento Eléctrico que num futuro
próximo viram estes postos estarem instalados em toda a Europa para carregamento de
carros eléctricos. Este posto tem a particularidade em cima da folha conter painéis solares e
os braços que seguram a folha são movíveis para orientar os Painéis Solares com a
orientação do Sol, o posto dá para carregar três veículos eléctricos ao mesmo tempo e
quando não há sol ou durante mau tempo o posto comuta para rede eléctrica para efectuar
o carregamento.
Esta imagem mostra o processo de
carregamento segundo a imagem da consola
táctil do posto de carregamento. Em que o
utilizador interage com a consola até se
efectuar o carregamento ou não.
6. MOD.AFTEBI.P-077.REV01
6 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Esta imagem é a ficha de carregamento segundo a norma
europeia é a ficha Mennekes na qual se centra o meu
projecto.
Primeira parte do projecto foi fazer uma placa de testes
Manual baseado em interruptores e resistências multivolta e
diodos rectificadores 1N4007 para ajustar os diversos estados
de carregamento onde os três terminais da ficha Mennekes
marcados com as setas vermelhas onde vai ligar o simulador
de carregamento e testador de estados os três terminais são
CP, GND e PP.
CP – Piloto de Controlo que define os estados de carga pela variação da tensão do PWM e
o terminal GND.
PP - Piloto Proximidade que detecta a Intensidade da Corrente de carga admitida pelo cabo
pela variação do duty Cycle do PWM e o terminal GND.
7. MOD.AFTEBI.P-077.REV01
7 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
PRINCIPAIS CARACTERÍSTICAS DO POSTO DE CARREGAMENTO:
Carregamento Trifásico.
Corrente Máxima até 80A.
Comunicação pela variação do duty cycle do PWM 1KHz em que define o a
intensidade de corrente de carga e pela variação da tensão do ciclo positivo
detecção de estados de carregamento.
Detecção de erros pela variação da tensão do PWM.
Detecção de libertação de gases durante a carga pelos sensores do Veículo
Eléctrico.
Circuito Equivalente de carga do Veiculo Eléctrico do CP
8. MOD.AFTEBI.P-077.REV01
8 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Corpo Do Relatório
ESQUEMATICO DO SIMULADOR SIMPLES DE CARREGAMENTO DE CARRO ELECTRICO
R1
5kΩ
Key=A
50%
R2
1kΩ
Key=A
50%
R7_20A
1kΩ
Key=A
50%
R4
5kΩ
Key=A
50%
R5
5kΩ
Key=A
50%
R6_13A
5kΩ
Key=A
50%
SW1_13A
R9_64A
5kΩ
Key=A
50%
R8_32A
1kΩ
Key=A
50%
D2
1N4007
D3
1N4007
D4
1N4007
SW2_20A SW4_63ASW3_32A
SW7_STATUS_DSW6_STATUS_C SW8_STATUS_E SW9_STATUS_XSW5_STATUS_B
PP
GND
CP
R3
1kΩ
Key=A
50%
D1
1N4007
Este simples simulador tem como função permitir aos técnicos de manutenção e instalação
que se possa calibrar, testar o funcionamento e detectar avarias nos postos de
carregamento. No terminal PP tem com função detectar o tipo de cabo e a sua corrente
máxima de carregamento no qual este simulador pela calibração das resistências R6 a R8
com os valores respectivos de R6=1500Ω, R7=680Ω e R8=220Ω. R9 ainda não tem valor
definido para teste de 63A, mas está lá para uso futuro. A R6 define a corrente de carga de
13A, A R7 define a corrente de carga de 20A, A R8 define a corrente de carga de 32A. Para
cada cabo já contém a resistência embutida que fornece identificação para que o sistema de
carregamento saiba qual a intensidade de corrente máxima admissível que pode passar por
ele.
9. MOD.AFTEBI.P-077.REV01
9 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
O terminal CP tem com função definir os Estados de Carregamento, quando se conecta o
cabo ao posto fica automaticamente no Estado A e é quando detecta o tipo de cabo e a
corrente máxima admissível que passa nele.
Como mostra forma de onda da figura acima descrita representa o Estado A com ambas as
alternâncias positiva e negativa com 12V da onda PWM.
Como mostra a a forma de onda na figura acima descrita quando o Veículo Eléctrico
conectar com o posto e for compatível com modo de carregamento do posto passa ao
Estado B e fica à espera que se inicie o carregamento indicado pela mudança da tensão 9V
da alternância positiva da onda PWM inserindo a resistência calibrada R1=2700Ω e o diodo
D4 que indicam a entrada no Estado B. Através do interruptor SW5.
10. MOD.AFTEBI.P-077.REV01
10 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Como mostra esta figura com forma de onda descrita quando se introduz a resistência
calibrada R2=1300Ω com o diodo D5 e o interruptor SW6 em paralelo com a resistência R1
e formam uma resistência equivalente de 882Ω. Muda para o Estado C que é o Estado de
iniciar o carregamento do Veículo Eléctrico. A tensão da alternância positiva é de 6V e a
negativa de 12V.
11. MOD.AFTEBI.P-077.REV01
11 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Tal como ilustra a figura forma de onda acima descrita é a forma de onda do Estado D é
similar ao Estado C mas quando há detecção de libertação de gases pelas Baterias o que
vai requerer ventilação em determinado por a resistência calibrada R3=240Ω, SW7 está
ligado e D2 cuja tensão da alternância positiva será de 3V e a negativa de 12V.
Tal como mostra a forma de onda acima descrita que é a forma de onda do Estado E
sempre que haja uma falha ou seja interrompido o carregamento a forma de onda é sempre
uma tensão contínua de -12V. Dado pela resistência R5 que os valores podem estar
compreendidos entre 200Ω e 5kΩ.
12. MOD.AFTEBI.P-077.REV01
12 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
PCB DO SIMULADOR SIMPLES DE CARREGAMENTO DE VEÍCULO ELÉCTRICO
Vista de Perspectiva do Lado dos Componentes
Vista por Baixo no lado Cobreado
13. MOD.AFTEBI.P-077.REV01
13 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
SIMULADOR DE VEÍCULO ELECTRICO MICROCONTROLADO
Introdução:
Este circuito é um melhoramento do anterior. Em vez de serem usados interruptores físicos
usaremos interruptores virtuais desenhados, criando uma aplicação para Android que é um
sistema aberto criado pela Google para dispositivos móveis que através do bluetooth vai
emparelhar com módulo adicionado ao circuito electrónico abaixo mostrado, enviar ordens
simples em forma de caracteres ascii a um sistema com micro controlador da Microchip da
série PIC e o micro controlador que será usado no projecto será o PIC16F877A este micro
controlador de 8 bits da gama Mid-Range, é um circuito integrado com 40 pinos dos quais
33 pinos são pinos I/O, nesses 33 alguns deles podem ser configurados como portas série
contem (RS232, SPI, I2C) que o torna muito versátil para ser usado com periféricos neste
caso o módulo bluetooth que comunica através do RS232 com níveis TTL com o PIC.
14. MOD.AFTEBI.P-077.REV01
14 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
O RS232 já muito conhecido porto série que vem dos anos 80 do século 20 foram
concebidos para comunicar a distâncias relativamente grandes e foi criado pela necessidade
de comunicar com um conjunto de periféricos: impressoras, plotters, terminais DTRs,
Modems, etc... pelos primeiros microprocessadores de 8 bits dos anos 80, Intel 8080 e
8085, Zilog Z80, Motorola 6800. Os principais fabricantes criaram chips de apoio que em
conjunção com os microprocessadores faziam conjuntos poderosos para gestão de
periféricos. Nascendo assim a norma RS232 implantou-se nos computadores pessoais até
aparecer a norma USB. Com velocidades desde 300Bauds até 115000Bauds (Bauds = Bits
por segundo). SPI (Serial Peripheral Interface) é um simples shift register que recebe e
transmite dados série é síncrona e Full-Duplex com clock e quatro fios Massa, SCK, SDI e
SDO. A velocidade máxima de transmissão depende do clock do Micro controlador, se o PIC
a 20MHz a velocidade máxima de transferência série é de 1,250Mbits/s. SPI tem um Master
pode ter um ou mais Slaves. O I2C (Inter Integrated Circuit) funciona de modo similar ao SPI
e é comunicação série síncrona Half-Duplex tem só uma linha de dados e pode ser
configurado nos seguintes Modos: Master, Slave e Multi-Master. Por ser Half-Duplex o envio
e recepção de dados obedecem a um protocolo mais elaborado e é o Master ou os Masters
que definem quando o Slave ou os Slaves podem enviar dados, na trama do(s) Master(s) é
que está codificado a selecção dos endereços do(s) Slave(s) e se lê(em) ou escreve(m)
dados.
16. MOD.AFTEBI.P-077.REV01
16 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
O RC7 é o Rx e o RC6 é o Tx em que o Rx do PIC vai ligar ao Tx do Módulo Bluetooth e
vice-versa Porto D está configurado como I/O de uso geral, e os pinos do Porto D estão
configurados como saídas que são responsáveis em accionar os relés de estado sólido que
por sua vez estão configurados como os interruptores do circuito anterior quatro deles serão
usados para seleccionar as correntes (13A, 20A, 32A, 63A). Os outros quatro relés do
mesmo porto serão usados para definir os Estados de funcionamento anteriormente
descritos no circuito anterior (Estado A, Estado B, Estado C, Estado D, Estado E). O
Porto C é o Porto responsável pelas comunicações Série anteriormente descritas. A Porta
SPI poderá ser usada facultativamente como output de dados para o Módulo LCD de 16x2 o
de uso mais comum e input de dados para o Módulo do teclado visto que esta Porta SPI é
uma porta síncrona comunicação série Full-Duplex que pode atingir uma velocidade de
transmissão de vários Megabits/s o que é perfeito para este tipo de aplicações bastando
usar alguns simples shift register para conversão de série/paralelo e paralelo/série que pode
ser usados circuitos integrados da série CMOS ou HCMOS visto terem controlo de retenção
de dados em latches no final de transmissão de um byte. O porto E tem como função
accionar o bus de controlo do Módulo LCD. Os outros portos do micro controlador serão
deixados com possíveis ligações para futuros upgrades ao projecto.
17. MOD.AFTEBI.P-077.REV01
17 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
U1
PIC16F877A
RC015
RC116
RC217
RC318
RC423
RC524
RC625
RC726
RB0 33
RB2 35
RB3 36
RB4 37
RB5 38
RB6 39
RB7 40
RD0 19
RD1 20
RD2 21
RD3 22
RD4 27
RD5 28
RD6 29
RD7 30
RB1 34
VSS112
VDD111
VDD232
VSS231
RA02
RA13
RA24
RA35
RA46
RA57
RE0 8
RE1 9
RE2 10
~MCLR/VPP1
OSC1/CLKI 13
OSC2/CLKO 14
X1
20MHz
C1
22pF
C2
22pF
VCC
5V
VCC
5V
PWR_GND
-
PWR_VCC
SW1
Reset
2
4
1
3
R1
10kΩ
5%
C3
1uF
R2
5kΩ
Key=A
50% R3
2kΩ
Key=A
50% R4
1kΩ
Key=A
50%
VCC
5V
R5
5kΩ
Key=A
50%
GND
CP
PP
R6
5kΩ
Key=A
50%
D5
1N4007
R7
2kΩ
Key=A
50%
D3
1N4007
D2
1N4007
R8
1kΩ
Key=A
50%
R9
5kΩ
Key=A
50%
D1
1N4007
Bluetooth_Module PortB
LCD_Control
Timer2
C8
100nF
C9
100nF
C10
100nF
C11
100nF
C12
100nF
C13
1µF
Power
VCC
5V
K
Status_B
K
Status_C
K
Status_D
VCC
5V
K
Status_E
K
13A
K
20A
K
32A
K
64A
Simulador de Veiculo Electrico
Microcontrolado por Bluetooth
PortA
Pic-Rx Bluetooth-Tx
Pic-Tx Bluetooth-Rx
SDO
SDI
SCK
SPI_LCD
SS
RS
R/W
E
18. MOD.AFTEBI.P-077.REV01
18 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Simulador de Veículo Eléctrico Microcontrolado PCB
Vista de baixo no lado Cobreado
19. MOD.AFTEBI.P-077.REV01
19 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
O esquema do módulo SPI abaixo apresentado é um Módulo facultativo de ligação ao
Projecto pode enviar dados série para o
LCD que receber dados série dum
teclado futuramente a desenvolver
através de dois shifts registers de
tecnologia CMOS o Circuito Integrado
4014 converte paralelo em série Usando
um pino do PortoB do microcontrolasdor
que activa o SS (Slave Select) do SPI
como mostra a seguinte figura do
Diagrama Temporal do SPI.
Significado dos Sinais SPI do PIC:
SS – Slave Select.
SDO – Serial Data Out.
SDI – Serial Data In
SCK – Serial Clock.
Diagrama Temporal do SPI
Quando o SS ou Strobe esta desactivado em nível Lógico “1” para carregar os dados do
shift Register 4014 de paralelo para série é usado um truque através da porta Nand Schmitt
Trigger para conseguir um Impulso Clock de transferência detecta o sinal SS a nível lógico
20. MOD.AFTEBI.P-077.REV01
20 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
“1” e carrega o shift register com o clock criado pela porta NAND schmitt Trigger U1A e
quando o clock do SPI está novamente activo quando o sinal a nível lógico “0” multiplexa
através da PORTA U1B o SCK do Microcontrolador para mover os dados do shift register
para o microcontrolador. O Circuito Integrado 4094 converte de série para paralelo os dados
do pino SDO que serão entregues ao Módulo LCD quando o SS ou Strobe na transição de
“0” para “1” aparecem nas suas saídas o binário correspondente enviado pelo
microcontrolador. Bus de controlo do LCD:
Diagrama Temporal do Módulo do LCD
E – Enable Data.
RS – Data/Commands.
R/W – Read Status Register/ Write Data & Commands.
O pino E é responsável por escrever os dados ou comandos no Módulo LCD na transição de
“0” para “1”.
O pino RS é responsável por definir se o byte de entrada são Dados ou Comandos. A Nível
“1” Dados, e a nível “0” comandos.
O pino R/W é responsável por definir se o LCD está a ler o registo de Status ou a escrever
dados ou comandos. Normalmente põe-se ligado a nível lógico Zero para ficar sempre em
modo de escrita.
O Databus tem o comprimento de 8 bits de DB0 a DB7.
21. MOD.AFTEBI.P-077.REV01
21 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Módulo LCD
Módulo Bluetooth
23. MOD.AFTEBI.P-077.REV01
23 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Módulo SPI PCB
Vista por Baixo no lado Cobreado
24. MOD.AFTEBI.P-077.REV01
24 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Módulo SPI PCB Real
Módulo Teclado PCB
25. MOD.AFTEBI.P-077.REV01
25 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Programação e as Ferramentas Desenvolvimento
Android SDK Manager
O SDK Manager é o software que carrega e instala as livrarias das APIs da internet. Sem o
SDK devidamente instalado e as APIs também devidamente instaladas não se pode
programar nada para o Android. É o primeiro Passo antes de começar a programar para os
dispositivos móveis. Para se instalar o Android SDK, Eclipse, e o Basic4Android requer
os seguintes pré-requisitos instalar primeiro Java JDK, Java Virtual Machine JRE as ultimas
versões.
26. MOD.AFTEBI.P-077.REV01
26 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Android Virtual Device Manager
Este software define a API para qual o dispositivo que o Eclipse vai trabalhar mediante a
escolha no novo projecto do Eclipse e lança o simulador dos dispositivos moveis. Este é o
segundo passo para se programar os dispositivos móveis.
27. MOD.AFTEBI.P-077.REV01
27 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Simulações do AVD
A primeira imagem simula os telemóveis Huawei Y100, a segunda imagem simula o tablet
Arnova 10G2, criado no Device Definitions do AVD Manager. Indo ao datasheet dos
dispositivos móveis e escolhendo as opções no Device Definitions. Depois instala-se os
plug-ins do android no Eclipse. Só depois é que fica pronto a programar
28. MOD.AFTEBI.P-077.REV01
28 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Eclipse
Neste Estágio usei vários tipos de Ferramentas de Desenvolvimento para cada passo do
projecto. Comecei do zero em algumas destas ferramentas não conhecia as ferramentas de
desenvolvimento para o Sistema Operativo Android nem o Sistema Operativo Android para
dispositivos móveis (Telemóveis, Tablets). Neste estágio aprendi sobre o Android fazendo
pesquisas na google e no youtube. Neste projecto comecei por fazer alguns tutoriais sobre
duas ferramentas: O Eclipse que aprendi a programar em Java e XML.
29. MOD.AFTEBI.P-077.REV01
29 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Basic4Android
O Basic4Android foi o programa no qual acabei por fazer o projecto devido à complexidade
da programação Java e XML. Sem conhecimento prévio não consegui fazer interagir o Java
e XML parti para uma linguagem de programação mais acessível e que já tinha usado outra
semelhante ao que já conhecia o BASIC e o Visual Basic da Microsoft. Primeiro tem de se
instalar as livrarias de desenvolvimento da Google. Com as Google APIs, o Android SDK e o
Android AVD. Pode-se criar o simulador de dispositivos móveis, pode-se desenvolver
aplicações para Android sem ter dispositivos móveis basta usar o simulador fornecido pela
Google, que vem embutido no Android AVD.
30. MOD.AFTEBI.P-077.REV01
30 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
As vantagens e desvantagens das Ferramentas usadas foram:
Eclipse - Usa dois tipos de Linguagens Java e XML com dificuldade de interacção
entre elas.
1. Tem Graphic Designer para o layout do dispositivo móvel muito difícil de
definir.
2. Tem muitas áreas para definir o funcionamento para o programa.
3. É muito pesado para os recursos dos computadores.
4. Quem compreender todas as áreas tem uma poderosa ferramenta de
desenvolvimento. As livrarias do Basic4Android são criadas no Eclipse.
5. Todos objectos no Graphic Designer têm todos a mesma cor de visualização.
Basic4Android - Usa a estrutura e a sintaxe parecida ao Visual Basic da Microsoft
muito mais intuitiva e mais amigável para o utilizador.
1. Só tem uma linguagem de desenvolvimento, o resto faz o compilador.
2. Tem o Graphic Designer muito simples, basta colocar os objectos nos sítios
onde os queremos que eles ficam lá.
3. Cada objecto do mesmo tipo no Graphic Designer tem cores variadas de
visualização que ajuda a visualizar no qual estamos a trabalhar
4. A cor e as coordenadas e o tamanho dos objectos podem ser alterados no
programa principal ou no Graphic Designer
31. MOD.AFTEBI.P-077.REV01
31 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
MikroC para Microcontroladores da Microchip
Apesar das desvantagens desta ferramenta de entrar logo em loop e não ter a mesma
estrutura da ferramenta de desenvolvimento para o Arduíno para parar o loop main() tem de
se criar outro loop com (do while) ou (while) em loop infinito, e não tem a flexibilidade da
linguagem assembly ao que dá mais trabalho a encontrar soluções desaconselho-a para
principiantes porque quando dá erros, não os explica propriamente. A definição do tipo de
microcontrolador e a sua frequência de trabalho é definida na ferramenta de
desenvolvimento neste caso é o Microcontrolador PIC16F877A a 20MHz como mostra a
figura acima quando se cria um novo projecto.
32. MOD.AFTEBI.P-077.REV01
32 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Corrente =
"1" ou "2"
ou "3" ou
"6"
PortoD Bit
5,6,7 = "1" e
Bit 4= "0"
S
Inicializar o
Bluetooth com
commando
AT+BAUD5 =
19200Bauds
PortoD Bit
0,1,2 = "1"
Bit 3 ="0"
N
N
N
N
Recebe =
"E"
Delay 700ms
S
S
S
S Recebe = "6"
Recebe = "3"
Delay 700ms
N
Chama a função
de teste da
Corrente
PortoD Bit
4,5,7 = "1"
e Bit 6 =
"0"
S
Programa Principal
PortoD Bit
4,5,6,7 =
"1" e Bit 7
= "0"
S
PortoD Bit
0,1,3 = "1"
Bit 2 ="0"
N
Definir o PortoD
Como Saidas
TRISD=0
Recebe =
"A" Corrente=recebe
(13A)
S
Inicio
Recebe = "1"
PortoD Bit
4,6,7 = "1"
Bit 5 ="0"
S
Dar Nome ao
Dispositivo
Bluetooth com o
Comando
AT+NAMECarroSim
N
Recebe =
"C"
Recebe = "2"
PortoD Bit
0,2,3 = "1"
Bit 1 ="0"
Delay 600ms
PortoD Bit
6,7 = "1" e
Bit 4,5 = "0"
N
N
Delay 700ms
Por as Saidas do
PortoD a "1"
Recebe =
"B"
PortoD Bit
1,2,3 = "1"
Bit 0 ="0"
dar PIN de
emperelhamento
ao Bluetooth com
o Comando
AT+PIN1111
Corrente=recebe
(20A)
Recebe =
"D"
S
Corrente=recebe
(32A)
Corrente=recebe
(63A)
N
Inicalizar o PIC
USART com
19200Bauds
Fim
33. MOD.AFTEBI.P-077.REV01
33 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
S
S
_Corrente_ = "3"
PortoD Bit
1,2,3 = "1"
Bit 0 ="0"
Corrente=recebe
(32A)
N
N
N
_Corrente_ = "2"
_Corrente_ = "6"
N
Corrente=recebe
(13A)
_Corrente_ = "1"
S
Corrente=recebe
(20A)
PortoD Bit
0,1,2 = "1"
Bit 3 ="0"
PortoD Bit
0,2,3 = "1"
Bit 1 ="0"
Fim
Sub Detecta_Corrente
Corrente=recebe
(63A)
Inicio
S
PortoD Bit
0,1,3 = "1"
Bit 2 ="0"
40. MOD.AFTEBI.P-077.REV01
40 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Alguns exemplos mais significativos dos Tutoriais
Do Eclipse para o Android
Layout XML
Esta secção é o Layout que vemos do dispositivo móvel onde esta definidos os objectos tais
como Botões, ListView, Checkbox, Labels, caixas de texto (TextView), ETC... Tudo isto é o
que visualizamos no ecrã do dispositivo móvel
41. MOD.AFTEBI.P-077.REV01
41 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
JAVA.R
Esta secção é onde se definem as variáveis do sistema dos objecto criado no Layout XML
para o java do programa principal utilizar é o que liga o XML ao Programa em JAVA e é
criado automaticamente quando compilamos o layout XML
42. MOD.AFTEBI.P-077.REV01
42 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
JAVA PROGRAMA PRINCIPAL
43. MOD.AFTEBI.P-077.REV01
43 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
ANDROID MANIFEST XML
O android Manifest é onde se define o funcionamento do programa e se põem as
permissões para utilização dos recursos e dos dispositivos do android
44. MOD.AFTEBI.P-077.REV01
44 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Programa: Criar uma lista de Nomes “ListView de Strings”
O que este programa faz é criar uma lista de nomes. Este exemplo mostra a complexidade
de usar esta ferramenta de trabalho. O Eclipse tem muitas secções e que uma falha numa
delas invalida o esforço dum programador pouco experiente.
45. MOD.AFTEBI.P-077.REV01
45 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Programa Criação dum botão Costumizavel neste caso Botão
Circular
Layout Principal XML Activity_Custom_Button.xml
47. MOD.AFTEBI.P-077.REV01
47 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
PROGRAMA PRINCIPAL EM JAVA
49. MOD.AFTEBI.P-077.REV01
49 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Programa: Criar um Botão Customizavel “Botão Customizavel”
É um botão circular Verde em 2D. Criado no Paint do Windows porque
todas as imagens são quadradas ou rectangulares quando se gravam a
parte rectangular é transformada em fundo transparente por uma
ferramenta do Office XP - O Microsoft Photo Editor. Que em seguida
será descrito.
50. MOD.AFTEBI.P-077.REV01
50 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Processo de criação dum botão
para o Android. Usa-se o Paint do
Windows, faz-se um recorte
quadrado ou rectangular
dependendo do tipo de botão como
está aqui demonstrado neta
imagem e transfere-se para
Microsoft Photo Editor através do
Clipboard do Windows. O método
copiar e colar Copia-se no Paint
E cola-se no Microsoft PhotoEditor. Clicamos na ferramenta de transformar em
transparência aplicarmos em cima da área que queremos.
“Esta imagem mostra a área branca antes de ser transformada em transparência”
51. MOD.AFTEBI.P-077.REV01
51 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Aparece este diálogo e andamos com o botão
de slide para a direita para incluir ate 10% da
variação ou para claro ou para escuro.
Esta imagem confirma que o fundo que era branco já está transparente, salva-se em
formato PNG, porque o android aceita este tipo de formato e também esta extensão de
ficheiro consegue guardar a informação da transparência. Os tipos mais comuns de ficheiros
de imagem tais como JPG, BMP, GIF entre outros tipos criados na mesma geração de
sistemas operativos que não guardam a informação de transparência.
52. MOD.AFTEBI.P-077.REV01
52 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Programa de Uso dos Recursos do WiFi do Dispositivo Móvel
Layout Principal XML Activity_WiFi_On_Off.xml
Neste Layout tem duas Partes a definição das propriedades do Layout e a definição das
propriedades dos Objectos Inseridos no Layout.
53. MOD.AFTEBI.P-077.REV01
53 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
1ª Parte – A definição das Propriedades do Layout:
Inicia a definição do layout com:
Android:orientation – define a orientação do Layout
Android:background – define a imagem de fundo da aplicação
Android: layout_with - define o comprimento do layout em pixéis que está neste
exemplo o tamanho escolhido nas configurações de dispositivo
Android: layout_height - define a altura do layout em pixéis que está neste exemplo o
tamanho escolhido nas configurações de dispositivo
2ª Parte – A definição dos Objectos do Layout:
TextView é uma caixa de texto onde pode servir como input ou output. Podemos por ou
visualizar dados. Começa por um sinal “<” e acaba com “/>” equivale abrir e fechar chavetas
em linguagem “C”.
Android: id – Define o nome do Objecto para ser identificado pelo programa em
JAVA
54. MOD.AFTEBI.P-077.REV01
54 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Android: layout_with – o comprimento em pixéis da caixa de texto que usa “dp” neste
caso preenche toda a largura do layout parente
Android: layout_height – a altura em pixéis da caixa de texto que usa “dp” neste caso
tem 50dp
Android: layout_centerHorizontal – define a posição ao centro do texto que será
escrito na horizontal e tem valor booleano
Android: Text – como está como Output de texto não contem texto algum põem-se
entre aspas
Tools: context – define a que layout pertence ao projecto WiFi_On_Off
Esta segunda caixa de texto tem mais umas opções:
android: layout_alignParentLeft – está alinhada com o Layout parente à esquerda
android: layout_alignParentTop – está alinhada com o Layout parente em cima
android: layout_marginTop – está a uma distância do topo da margem de 64dp
(pixéis)
55. MOD.AFTEBI.P-077.REV01
55 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
android:layout_height=”wrap_Content” – quer dizer qualquer que seja o tamanho do
texto o botão se ajusta automaticamente ao seu tamanho em altura
android:layout_below – define a sua posição relativamente a outro objecto neste
caso ao TextView “WiFiState”
android:layout_marginTop – está a uma distância do topo da margem de
26dp(pixéis) da caixa de texto acima
android:text – é o nome dado ao botão para o definir “ligar o WiFi”
android:layout_below – define a sua posição relativamente a outro objecto neste
caso o botão anterior “onwifi”
Depois termina a definição do layout com
56. MOD.AFTEBI.P-077.REV01
56 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
JAVA.R
Este ficheiro R.Java é um ficheiro onde os valores das variáveis objectos e não objectos são
automaticamente atribuídos pela compilação do Layout e do programa principal em JAVA
57. MOD.AFTEBI.P-077.REV01
57 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
PROGRAMA PRINCIPAL EM JAVA
58. MOD.AFTEBI.P-077.REV01
58 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
- Este é o nome que terá quando for compilado WiFi_On_Off
Estas são as Livrarias dos recursos e objectos para o android que ao pôr-se o asterisco a
terminar é para incluir todas as sub livrarias que tem como base os nomes entre os pontos
finais senão tinha de se por uma a uma como a primeira “android.os.bundle”.
Tal como em Linguagem C o programa Principal começa por chavetas, Declara-se as variáveis
gerais a usar ou seja os objectos definidos no layout XML Um programa para android é
considerado uma actividade.
Esta instrução cria a imagem no ecrã do dispositivo móvel e todos os objectos que se
seguem são criados com esta instrução.
59. MOD.AFTEBI.P-077.REV01
59 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
super.oncreate(savedInstantceState); - deve ser para salvar as variáveis do sistema
operativo Android no Stack pointer
setcontentview(R.layout.activity_wifi_on_of); – vai chamar as definições do ficheiro
R.Java
WifiState = (TextView)findViewById(R.id.wifistate); - vai fazer corresponder a variável
no programa principal da caixa de texto do XML definida pelo ficheiro R.Java
OnWifi = (Button)findViewById(R.id.onwifi); - vai fazer corresponder a variável no
programa principal do Botão do XML definida pelo ficheiro R.Java
OffWifi = (Button)findViewById(R.id.offwifi); - vai fazer corresponder a variável no
programa principal do Botão do XML definida pelo ficheiro R.Java
Esta instrução complexa é para activar o estado usando a livraria WiFiManager
Esta instrução põe o Dispositivo móvel á escuta para detectar cliques no ecrã táctil
60. MOD.AFTEBI.P-077.REV01
60 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Esta instrução que é muita complexa no geral chama o serviço da livraria WiFiManager de
ligar o dispositivo WiFi.
Esta instrução que é muita complexa no geral chama o serviço da livraria WiFiManager de
desligar o dispositivo WiFi.
Esta subrotina verifica como esta o estado do WiFi ou seja se ligado ou desligado
Esta função complexa verifica se está recebendo sinal de alguma WiFi hotspot
Criada logo a funcionar esta variável vai verificar o estado do Wifi do dispositivo recorrendo
a Livraria WiFiManager
61. MOD.AFTEBI.P-077.REV01
61 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Este conjunto de instruções vai verificando a variável anteriormente descrita para enviar as
mensagens para a caixa de Texto WiFiState.
62. MOD.AFTEBI.P-077.REV01
62 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
ANDROID MANIFEST XML
Este android Manifest é já diferente dos anteriores no qual eu acrescentei as seguintes
linhas:
Que permite aceder ao recurso WiFi pode-se ler o WiFi e pode-se modificar o Estado do
dispositivo WiFi com estas três linhas definidas pelo programador
Estas duas linhas definem a versão mínima do android e a máxima versão do SDK. As
outras linhas incluindo estas duas são criadas quando se cria o projecto no eclipse.
63. MOD.AFTEBI.P-077.REV01
63 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
PROGRAMA: LIGA E DESLIGA O WIFI “TURN WIFI ON/OFF”
A Caixa de Texto WiFiState tem as mensagens a cinzento-escuro acima do botão “Turn
WiFi On” o que faz este programa é ligar e desligar o tique nas propriedades da redes sem
fios WiFi.
64. MOD.AFTEBI.P-077.REV01
64 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Breve Explicação do Basic4Android
O Basic para Android tem cinco secções principais quando se abre a ferramenta de
desenvolvimento:
1ª - Sub Process Globals é onde se declara as variáveis Gerais do Processo
65. MOD.AFTEBI.P-077.REV01
65 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
2ª - Sub Globals é onde se declara as variáveis da actividade
3ª - Sub Activity_Create é rotina principal onde se faz a inicialização e a criação do primeiro
Layout se tiver mais que um Layout e também os objectos desse layout para a tela como no
eclipse
4ª - Sub Activity_Resume faz qualquer coisa quando se está em estado de espera antes de
resumir à rotina da actividade
5ª - Sub Activity_Pause é a subrotina para quando criamos uma pausa na actividade para
fazer alguma coisa enquanto está a espera.
Tem TABs onde se podem ser definidas ou ser escolhidos ficheiros, livrarias, módulos e os
Logs
Quando se carrega no tab Modules aparece os icons de todas as subrotinas
criadas neste caso por defeito estão sempre lá as cinco que falei
anteriormente e vai aparecendo mais conforme acrescentamos e quando
criamos outras subrotinas.
66. MOD.AFTEBI.P-077.REV01
66 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Como se vê na figura clicando no Tab Files aparece um botão para adicionar ficheiros
quando se requer um ficheiro de imagem ou vídeo ou outro ficheiro qualquer para se inserir
na aplicação em desenvolvimento.
67. MOD.AFTEBI.P-077.REV01
67 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Os Logs servem para dar uma visualização do funcionamento das aplicações quando
conectamos através do depurador (Debug).
68. MOD.AFTEBI.P-077.REV01
68 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
As Livrarias são vinte e três originalmente quando se instala. As que estão aqui já foram
acrescentadas por mim e podem ser criadas no Eclipse. Instalam-se facilmente
acrescentando-se à pasta das livrarias originais ou cria-se uma pasta para acrescentar
outras livrarias. Todas as livrarias a serem instaladas na pasta criada para esse efeito que
tem par XML e JAVA com o mesmo nome.
69. MOD.AFTEBI.P-077.REV01
69 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
As livrarias originais são as seguintes:
70. MOD.AFTEBI.P-077.REV01
70 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Não se pode meter espaços em branco no caminho dos ficheiros no disco senão o
Basic4Android não reconhece e dá erro e não funciona.
71. MOD.AFTEBI.P-077.REV01
71 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Para se configurar o Basic4Android. Tem de se clicar no menu Tools --> configure Paths e
aparece este diálogo acima mostrado. Se der erro ao princípio é porque um ou mais dos
caminhos estão errados ou tem espaços entre palavras e não pode haver espaços como
demonstra esta Imagem no caminho das livrarias adicionais do Basic4Android.
72. MOD.AFTEBI.P-077.REV01
72 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Alguns exemplos mais significativos dos Tutoriais
do Basic4Android
Estas são alguns exemplos de aplicações nos quais me irei debruçar tanto para o tablet
como para telemóvel.
73. MOD.AFTEBI.P-077.REV01
73 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
APLICAÇÃO: TESTE DE MULTIPLOS LAYOUTS “MULTIPLOS LAYOUTS”
Como este programa tem mais subrotinas apararem mais módulos no respectivo TAB.
74. MOD.AFTEBI.P-077.REV01
74 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Para se trabalhar com as funções das diversas livrarias tem de se ticar as necessárias e por
defeito já esta ticada a livraria “Core” que contém todas as funções básicas do Android
75. MOD.AFTEBI.P-077.REV01
75 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Este Programa testa múltiplos layouts, múltiplos botões, múltiplos backgrounds e a opção
Menu Item. Os botões são os rectângulos coloridos são os típicos botões do Basic4Android
e as cores dos botões foram escolhidas. Clicando no botão mais à esquerda Layout Área
passa para a figura seguinte. Que tem um novo Backgroud e que aparece um novo botão.
76. MOD.AFTEBI.P-077.REV01
76 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Este é o segundo Layout. Os botões aparecem todos no mesmo sítio porque este foi uma
cópia do anterior só se pôs outro botão chamado Layout Menu está no lugar do botão
Layout Área que permite voltar ao primeiro Layout. Se clicar no botão Layout Embed passa
para o próximo Layout e o botão Layout Menu muda de sítio e muda para um novo
Backgroud.
77. MOD.AFTEBI.P-077.REV01
77 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Este terceiro Layout apareceu novamente o botão Layout Área e o botão Layout Menu que
permite voltar ao primeiro Layout mudou de sítio em relação ao segundo Layout. Pode
novamente voltar para o segundo Layout se assim o desejar. Se clicar no botão mais à
direita muda para o Layout Start que por sua vez tem um novo Background e novamente os
botões mudam de posição.
78. MOD.AFTEBI.P-077.REV01
78 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Todos estes Layouts são cópias do primeiro, só muda é a posição do novo botão que
aparece no segundo Layout e que permite em qualquer um deles voltar sempre ao primeiro
Layout e para todos os outros anteriores.
80. MOD.AFTEBI.P-077.REV01
80 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
O Programador pode
acrescentar Opções
suplementares num Menu
que pode se activado pelo
próprio dispositivo móvel.
Chamado Menu Item que
pode ser o que se quiser e
neste caso sai do programa
bastando clicar no icons
“Sair”. Que vai aparecer em
baixo no ecrã, onde indica a seta vermelha onde clicar para obter esse menu de opções
disponibilizado pelo criador do Sistema Operativo neste caso foi a Google para o Android.
Pelo que mostra as imagens anteriores pode aparecer em qualquer Layout.
Nota: Este Programa Permite aprofundar conhecimentos na direcção do Projecto Principal.
81. MOD.AFTEBI.P-077.REV01
81 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
TESTE DE MULTIPLOS LAYOUTS LINHAS DE CODIGO
83. MOD.AFTEBI.P-077.REV01
83 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
*Nota: Este programa não vai ser explicado em detalhe porque é um tutorial com algumas
alterações
84. MOD.AFTEBI.P-077.REV01
84 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
LAYOUT DESIGNER
Clicando nos diversos objectos na
imagem acima definidos por
rectângulos coloridos e também no
próprio rectângulo do Layout Preto
aparecem as propriedades que
podem ser alteradas na janela ao
lado depois no menu file grava-se o
respectivo Layout com os objectos
nele adicionados pelo Menu Add
View que contém todos os objectos
essenciais usados no Android e que
podem ser customizaveis pelo
programador à posteriori.
85. MOD.AFTEBI.P-077.REV01
85 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Exemplificação como clicando no
objecto BtnÁrea que é um botão,
aparece na janela das propriedades
o correspondente nome dado e
outras propriedades mutáveis. Nesta
janela permite também adicionar
ficheiros de Imagens, Vídeo ou
Áudio, para uso na aplicação e criar
também o layout de acordo com o
tamanho da tela do dispositivo Móvel
em Pixéis. Neste caso está
configurado para o Tablet Arnova
10G2 1024x600 pixéis.
86. MOD.AFTEBI.P-077.REV01
86 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Esta janela contém os dispositivos mais comuns onde se pode escolher o tipo de Layout nos
botões de rádio senão for nenhum destes tamanhos normais clica-se em Other e põe-se o
novo tamanho de Layout retirado dos dados técnicos do fabricante o Datasheet do
dispositivo.
87. MOD.AFTEBI.P-077.REV01
87 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
TESTE DOS BOTÕES COSTUMIZAVEIS CONVERSOR DE CARACTER PARA ASCII
LINHAS DE CODIGO
89. MOD.AFTEBI.P-077.REV01
89 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
APLICAÇÃO: TESTE DE BOTÕES COSTUMIZAVEIS “CONVERSOR CARACTER PARA
ASCII”
90. MOD.AFTEBI.P-077.REV01
90 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Este teste tem a particularidade de testar várias opções gráficas caixas de texto
transformadas em visualizadores, botões costumizaveis pelo programador e criar uma
ferramenta para futuros usos em programação do projecto principal. Esta aplicação o que
faz é através das instruções do Basic4Android converter um carácter em seu valor em
código ASCII, e se for um carácter numérico apresenta também o seu valor inteiro no
visualizador debaixo da etiqueta Valor Decimal que pode servir para futuros usos em
programação de converter caracteres numéricos em seu valor inteiro.
91. MOD.AFTEBI.P-077.REV01
91 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Estas Caixas de Texto Costumizaveis com Background duma Imagem e o Botão Oval foram
Feitos no Paint do Windows.
Depois recortamos uma a uma e
manda-se para Microsoft Photo Editor
para se dar o fundo transparente.
Depois é gravado como
PNG e transferido para o
PaintShop Pro ou outro
Similar que tem efeitos
para tornar uma imagem
2D em 3D.
92. MOD.AFTEBI.P-077.REV01
92 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Aqui no Paintshop Pro pode-
se usar o menu Effect ou o
botão da barra de
ferramentas. Depois de
devidamente configurada para
aparecer escolhe-se no Lista
de efeitos,
e depois o efeito na janela do “Effect
Browser” aparece o nosso desenho com o
efeito mais comum que está assignado
por defeito, e clicamos em OK
Aparece esta Janela com as propriedades dos
efeitos que se podem selecionar e gravar as
Alterações em novos Presets. Depois se se ajustar
ao agrado do utilizador valida-se no botão OK e vai
aparecer na tela principal a alteração ao botão 2D
transformando-o em 3D.
93. MOD.AFTEBI.P-077.REV01
93 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Este efeito é o efeito botão metido
para dentro que dá a sensação de
ter sido pressionado e vai ser
desenhado pelo programa quando
usa subrotina do botão
pressionado.
Este efeito é o efeito do botão
metido para fora o que vai ser
posto no programa da subrotina
do botão como não pressionado.
Com a combinação exatas destas
duas imagens cria-se a sensação
natural quando pressionamos um
botão numa maquina ou outro
dispositivo, recria um movimento
normal do mundo real transposto
para o mundo virtual.
Os outros efeitos das caixas de texto também são feitos no Paintshop Pro.
94. MOD.AFTEBI.P-077.REV01
94 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
APLICAÇÕES: TESTE DETECTING “WIFI CONNECTIONS & LISTVIEW WIFI
HOTSPOTS”
São duas Aplicações criadas para decidir qual o meio de comunicação a ser usado para o
Projecto
1ª - Detecta as conexões do Wifi e Mostra o IP
2ª - Detecta as Hotspots e mostra seu dados
Estas Duas Aplicações futuramente irão servir para fazer nascer outro tipo de projecto.
Estas duas aplicações vão se aglutinar numa só com o visual da segunda
1ª - Detecting WiFi Connections Para o Tablet
95. MOD.AFTEBI.P-077.REV01
95 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
1ª - Detecting WiFi Connections Para o Telemóvel
96. MOD.AFTEBI.P-077.REV01
96 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Esta aplicação usa as Livrarias Adicionais “Network”
e “Phone” além da Livraria principal por defeito
“Core”. A Livraria “Phone” ajuda a detectar o estado
do telefone se conectado ou desconectado a Livraria
“Network” Detecta o IP e ajuda a desconectar os
sockets da rede.
97. MOD.AFTEBI.P-077.REV01
97 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Foram criados Menus-Itens para voltar a fazer novas
detecções dos valores e estado da Conexão que
repete o programa inicial. Tanto para telemóvel como
tablet as aplicações são semelhantes criadas a partir
do mesmo código e com dois layouts diferentes para a
mesma aplicação quando se compila e estão os dois
dispositivos ligados aparece duas opções de
transferência para um ou outro dispositivo o que
permite testar a mesma aplicação em vários
dispositivos diferentes se estiverem vários dispositivos
ligados. Criando duas Variantes do mesmo Layout
escreve-se para o telemóvel e para o Tablet
99. MOD.AFTEBI.P-077.REV01
99 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
2ª - Listiview WiFi Hotspots Cria uma Lista de Hotspots e dá informações sobre a conexão
actual
1. – Titulo do Programa e a Hotspot que o Dispositivo Esta Conectado actualmente
separados por um hífen.
2. – Medidor numérico e visual da velocidade de conexão em Megabits/s.
3. – Botão para Listar as Hotspots disponíveis na área.
4. – Botão Vermelho com “C” para apagar a listagem e botão “i” para se obter mais
informações sobre a hotspot actualmente conectada.
101. MOD.AFTEBI.P-077.REV01
101 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Quando se clica num item da lista aparece no título o
item escolhido. Como demonstra a figura acima
Quando inicia a aplicação para detectar as hotspots e
listá-las numa janela composta em forma de visor
Como se demonstrou anteriormente tanto para
telemóvel como tablet as aplicações são semelhantes
criadas a partir do mesmo código com algumas
diferenças dos nomes. Uma Particularidade desta
aplicação quando se clica num item da lista aparece
no título o item escolhido. Como demonstra a figura
abaixo criando duas Variantes do mesmo Layout
escreve-se para o telemóvel e para o Tablet
102. MOD.AFTEBI.P-077.REV01
102 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
O Medidor visual de velocidade de transmissão é
uma ProgressBar que tem um campo de actuação de
(0 a 100) que pode ser usado como medidor de
percentagem ou neste caso de velocidade de
transmissão. Como se verifica que a correspondência
do valor indicado de 54MB/s a ProgressBar passa
pouco mais de metade do seu campo da gama (0 a
100). Esta aplicação foi uma versão muito melhorada
em relação ao original do tutorial acedido no site
oficial do Software. Onde o original não tem botões
nem visualizador gráfico na listagem é uma aplicação
muito crude.
107. MOD.AFTEBI.P-077.REV01
107 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Como se demonstra por estas figuras, os dois
programas anteriores fundiram-se num só e pode ser
usado como aplicação de diagnóstico de redes WiFi.
Pode-se incluir dados técnicos do funcionamento das
redes sem fios tais como: Frequência, Nível de sinal,
Velocidade de transmissão, Endereço IP do
dispositivo, MAC Address, Nome da Hotspot e
Network ID. Bastando carregar no Botão “i” aparece
uma mensagem “Toast” com o resto das informações.
108. MOD.AFTEBI.P-077.REV01
108 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
APLICAÇÃO: TESTE DO BLUETOOTH “BLUETOOTH CHAT”
Esta Aplicação é a base para o Projecto Final foi decidido por causa do Custo Beneficio usar
a comunicação sem fios Bluetooth os módulos a comprar eram substancialmente muito mais
baratos que os módulos WiFi, mas a comunhão WiFi não ficou posta de lado continuei a
desenvolver apesar das limitações. Esta aplicação é em muitos aspectos às aplicações
similares mas por meio da internet tem uma zona de escrever texto e uma zona de receber
texto e um botão de enviar, mas é algo semelhante a uma versão muito simples do
comunicador da Microsoft MSN Windows Live Messenger mas só para Bluetooth.
Esta aplicação é uma versão melhorada do Tutorial
que está no site oficial do Basic4Android contém
uma caixa de texto larga que é a recepção das
mensagens, em multi-linha e cria uma barra de scroll
quando o texto ultrapassa a capacidade de
visualização da caixa de texto de recepção. Contém
uma caixa de texto rectangular onde se escreve o
que se quer e se carrega no botão para enviar para o
outro telemóvel ou tablet com bluetooth. Como o
Tablet que uso não contém bluetooth, usei dois
telemóveis para experimentar. Contém também um
botão “Envia” e um Led que muda para cor verde
quando detecta uma recepção de dados e uma cor
vermelha quando dá erro. Novamente usei um botão criado pelos métodos anteriormente
descritos para dar uma sensação de ser um botão para se pressionar tem efeito 3D
arrendando nas pontas.
109. MOD.AFTEBI.P-077.REV01
109 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Quando escrevemos algo na caixa de envio ao clicar
com os dedos na caixa fica iluminada a laranja para
ser distinguida duma caixa não escolhida.
Ao tocar-se no menu do telemóvel aparece estas três
opções: Conectar ao dispositivo já emparelhado pelo
telemóvel, Desconectar o telemóvel e desconectar e
sair da aplicação. Foram estes os três menus
adicionados á aplicação usando icons feitos
especialmente para o Android encontrados na
Internet. Com esta aplicação aprendi os conceitos
básicos das comunicações Bluetooth usadas no
Basic4Android.
113. MOD.AFTEBI.P-077.REV01
113 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
APLICAÇÕES: FERRAMENTAS AUXILIARES “SIMULADOR DE VEÍCULO ELECTRICO
MICROCONTROLADO POR BLUETOOTH”
Simulador de Microcontrolador PIC
114. MOD.AFTEBI.P-077.REV01
114 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Estes três Layouts fazem parte da mesma ferramenta vai simular a resposta do
Microcontrolador da Microchip PIC16F877A ao projecto Principal que será descrito
posteriormente. Tal como as aplicações Wifi Hotspots e Listview Wifi Hotspots usou fontes
externas usadas pelo Windows XP, o Efeito do Display a LEDs é conseguido pela
incorporação de uma fonte do Windows TrueType Font LCDN.TTF na etiqueta configurada
115. MOD.AFTEBI.P-077.REV01
115 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Como fosse um Display de LEDs através do mesmo processo de criação dos Botões
custumizaveis.
O Primeiro Layout é layout Inicial onde simula o PIC fica
á espera do comando para ficar em automático ou
manual. Que por sua vez acende o LED correspondente
á função e quando recebe o tipo de testes Manual ou
Automático que requer, só passa ao segundo ou
terceiro Layout se tiver também recebido a ordem para
configurar uma das seguintes correntes de carga 13A,
20A, 32A e 63A. A função dos botões “Ligar” e “Stop”
também aparece no visor amarelo se a simulação pode
continuar ou esperar. O utilizador fica com algum
controlo sobre a simulação.
Em todos os Layouts pode-se aceder às opções
Bluetooth. Os visualizadores da Corrente de carga são
idênticos em ambas as Funções Automática ou Manual.
O Display Digital simula a resposta do PIC em Modo
Automático ao Programa que contem três sequências
diferentes de estados. No Mostrador verde amarelado
Mostra a corrente que foi escolhida pelo outro
dispositivo móvel, onde está a aplicação principal que
será descrita posteriormente. Esta ferramenta usa-se
em conjunção com outro dispositivo móvel que já
contém a aplicação do projecto principal para testes da
aplicação principal para se encontrar erros (bugs) na
aplicação.
116. MOD.AFTEBI.P-077.REV01
116 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
O Botão Prog1 faz todos os LEDs sequencialmente de
“A-F”.
O Botão Prog2 faz todos os LEDs sequencialmente até
ao Estado “C” depois salta para o estado “F” e Volta ao
Estado “C” e faz sequencialmente até ao Estado “F”
O Botão Prog3 faz todos os LEDs sequencialmente até
ao Estado “D” depois salta para o estado “F” e Volta ao
Estado “D” e faz sequencialmente até ao Estado “F”.
O Display Digital Indica o número de programa com a
respectiva sequência.
Este Layout é o Manual em que PIC Responderá aos
comandos de Estado enviado pelo Projecto Principal é
simulado com os botões do estado enviado pelo PIC
para reconhecimento, que recebeu um dos seis Estados
definidos são enviados de volta ao Projecto Principal,
em suma é resposta simulada do PIC aos comandos
manuais enviados por nós a partir do Projecto Principal.
Vai acender a verde um dos LEDs de Estado e o LED
de recepção acende a verde e apaga ficando amarelo
com ¼ segundo sempre que recebe um comando
qualquer do Projecto Principal.
Todos os Layouts têm um LED de recepção de Comandos para indica que houve
comunicação entre dois dispositivos móveis.
117. MOD.AFTEBI.P-077.REV01
117 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Teste de Envio de um Caracter Através do Bluetooth
Esta ferramenta foi a primeira a ser criada para testar o envio de um caracter para de um
dispositivo móvel para outro pressionando um só botão.
Quando pressionado o botão ilumina-se de verde o que era
vermelho e mete-se para dentro e a periferia do botão fica
cinzento-escuro para dar a sensação de se meter para dentro
também e assim enviando o Caracter “A” o LED amarelo é o
LED de recepção tal como na aplicação anterior quando recebe
um dado qualquer muda para verde durante ¼ segundo e
depois volta para amarelo novamente. O Display Digital serve
para se visualizar o que se envia e o que se recebe também.
118. MOD.AFTEBI.P-077.REV01
118 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Simulador de PIC para teste de Envio e Recepção de comandos através do Bluetooth para
ambiente Windows
Criação duma ferramenta para testar o
Programa em Visual Basic6 para se testar o
dispositivo móvel em Ambiente Windows e os
testes Automático e o Manual integrados
num único Layout. Caixa de Texto COM é
para inserir o COM Port do Bluetooth
Comunica a 9600Bauds, 8Bits e sem
paridade o botão “Configurar COM” é para
aplicar ao programa o COM port do PC onde
esta o bluetooth ligado. O Display verde
indica o Programa Automático de sequências
iguais ao da aplicação anterior para Android no visor Rosa mostra: os Estados, as correntes
e o Modo de funcionamento Automático ou Manual. O tique liga e desliga o COM Port do
PC. O painel azul claro é a parte Automática do Testador que contem os três botões
exactamente na mesma ordem da aplicação do Android e o painel azul esverdeado é a
parte Manual do Testador com os respectivos botões e LEDs para cada Estado.
119. MOD.AFTEBI.P-077.REV01
119 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Futuro projecto de um Osciloscópio Android
Futuro projecto de um Frequencímetro Android
Estes dois futuros projectos podem ser integrados num projecto de Instrumentação ou neste
mesmo projecto para servir de auxiliares de diagnóstico ao projecto principal.
120. MOD.AFTEBI.P-077.REV01
120 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
APLICAÇÃO: PROJECTO PRINCIPAL “SIMULADOR DE VEÍCULO ELÉCTRICO
MICROCONTROLADO POR BLUETOOTH”
Estes são os Primeiros três Layouts do Projecto as imagens de cima são é o primeiro Layout
quando o utilizador clica no icon da aplicação no dispositivo móvel neste primeiro Layout
“Bluetooth – Escolha o Tipo de Teste” o utilizador tem dois botões e escolhe o tipo de
teste que quer fazer, se premir no botão “Teste Automático” independentemente do tipo de
teste vai sempre parar ao Layout “Bluetooth - Escolha a Corrente” se premir um dos Botões
Amarelo Rosa vai parar ao Layout “Bluetooth – Teste Automático de Estados” se premir o
botão Seta Acima se iluminará de verde e volta ao Layout “Bluetooth - Escolha a
121. MOD.AFTEBI.P-077.REV01
121 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Corrente”. Se novamente premir o botão Seta Acima Vermelha volta para o Layout
“Bluetooth - Escolha o tipo de Testes” Se no Primeiro Layout “Bluetooth – Escolha o Tipo
de Teste”. Pode a partir de qualquer etapa aceder aos menus de Conectar Bluetooth,
Desconectar Bluetooth, sair da aplicação, também ao Layout Ajuda que falaremos
posteriormente, o menu volta só funciona quando está dentro do Layout de Ajuda.
Ao premir o botão “Teste Manual” vai parar novamente ao Layout “Bluetooth – Escolha a
Corrente” quando se escolher qual a corrente de Teste então vai parar ao Layout Azul mais
claro “Bluetooth – Teste Manual dos Estados”
As imagens da direita ao Layout Azul mais Claro como são seis Estados e o telemóvel tem
uma área pequena subdividi em dois Layouts três Estados no Layout da Direita e os outros
três Estados no Layout da esquerda de Cor Azul mais escuro e também tendo outra
restrição de só poder usar a área que não tina os Logótipos e a resolução do telemóvel era
de 320x480 pixéis. Estes dois layouts servem para testar os Estados Manualmente clicando
no botão seta Vermelha para cima volta ao Layout “Bluetooth Escolha a Corrente”.
Conclusões se premir os botões com as Setas Vermelhas paras cima ao clicar-se volta para
o Layout anterior e faz funções diferentes. Se clicar os botões com Seta cor-de-rosa muda
de layout mas é para fazer a mesma função. Clicando no Botão Cor-de-rosa seta para a
direita muda para o Layout Azul mais escuro ao clicar no botão do layout azulo mais escuro
volta novamente ao Layout azul mais Claro.
122. MOD.AFTEBI.P-077.REV01
122 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Ao clicar num destes dois botões está a enviar uma ordem
pelo bluetooth ao microcontrolador para se por em modo
Automático ou Modo Manual. O Microcontrolador espera
pela escolha da corrente para iniciar ou o modo Automático
com uns Programas definidos de testes ou modo Manual
onde o Microcontrolador acciona os diversos estados e
responde de volta para o dispositivo móvel.
Cada botão deste Layout também envia uma ordem ao
microcontrolador através do Bluetooth para dizer qual o relé da
corrente que deve accionar e o botão da “seta Vermelha
acima” envia também ao microcontrolador para voltar ao início
quando esperava para a escolha do tipo de testes se clicar em
algum dos botões da corrente ou vai para modo Automático ou
vai para modo Manual
123. MOD.AFTEBI.P-077.REV01
123 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Este Layout é composto por três Botões de teste dos Estados e
por três LEDs indicadores dos três primeiros Estados que
acendem quando o Microcontrolador manda a confirmação que
esta no Estado que nós ordenamos, pelo facto que o LED
correspondente ao estado que nós mandar-mos a ordem muda
de Amarelo que é o seu Estado neutro para Verde se a ordem
for cumprida, se houver erro o LED muda para Vermelho, vamos
testando os diversos Estados esperando pela resposta do
Microcontrolador. O outro Layout azul mais Escuro faz o mesmo
que este e contém os restantes Estados.
Neste Layout tem dois botões o botão para voltar ao layout anterior o das correntes tal com
os outros é clicando no botão da “Seta Vermelha para cima”. Tem
também o botão de inicio que funciona da seguinte maneira
quando pressionado a parte vermelha do botão muda para verde
e a palavra Inicio muda de laranja para amarelo. Faz o seguinte
quando pressionamos o botão inicio e envia a ordem para
começar os testes automáticos e escolher o tipo de sequência
através do bluetooth para o microcontrolador. O projecto a partir
deste layout poderá ter um novo layout para escolher a sequência
automática que queremos como exemplificado nesta ferramenta
da imagem da direita ou então como o módulo adicional do SPI
com três ou mais botões criando-se previamente as várias sequências
de Estados para teste no microcontrolador. A sequência é feita pelo
próprio microcontrolador e o microcontrolador enviará para o layout
“Bluetooth - Teste Automático dos Estados” respostas que irão
mudar de cor dos LEDs deste layout para verde e acenderão em
sequência um a um.
124. MOD.AFTEBI.P-077.REV01
124 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Layout de Ajuda “Help File”
Este Layout tem como função ajudar o utilizador a
familiarizar-se com a aplicação. Este layout é um
Scroll view de Imagens e concebido com imagem
previamente preparadas a partir de texto com
imagens dos respectivos layouts explicados
anteriormente transformado em imagens simples para
cada layout e postas em modo scroll pela aplicação
de um tutorial que fiz previamente como mostra esta
imagem da direita e ao clicar na imagem dentro da
aplicação aparece uma breve explicação sobre a
imagem logo acima da imagem escolhida com a cor
castanha clara.
Deslizando com o dedo na
zona das imagens desliza
com a imagem para cima e
para baixo cada imagem pode
ser clicada e quando clicar vai aparecer a breve
explicação e na própria imagem aparece uma
explicação mais aprofundada sobre cada layout
126. MOD.AFTEBI.P-077.REV01
126 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
S
Espera que o
utilizador
Prima uma
tecla
Inicio
Inicializa o
Layout
Principal
N
Inicializa todos os
Objectos: Background
etiquetas e Botões
Envia
Comando para
Bluetooth
Automático
ou Manual
É Botão
Inicio?
É Botao
Seta Acima
Vermelha?
Espera que o
utilizador
Prima uma
tecla
É
Automatico?
Inicializa o
Layout
Teste
Automático
É Teste
Manual?
Envia Comando
para
Bluetooth
Volta Menu
Principal
É Igual
ao Estado
Enviado?
Acende LED
com a côr
Vermelha
Utilizador Prime: Botao
duma das Correntes
134A, 20A, 32A 63A ou
Seta Vermelha Acima
S
Espera que o
utilizador
Prima uma
tecla
Inicializa todos os
Objectos: Background
etiquetas e Botões
S
Utilizador Prime:
Botão Estado A, B, C,
D, E, F ou Seta Acima
Vermelha, ou seta
Rosa Direita
É Botao
Seta Acima
Vermelha?
Inicializa as
comunicações
Bluetooth
Envia Comando
Bluetooth
Estados A ou
B ou C
N
S
Inicializa as
Variáveis
Processo
Globais
Inicializa o
Layout
Principal
N
Inicializa todos os
Objectos: Background
etiquetas e Botões
Inicializa o
Layout
TesteManual
Azula Escuro
Utilizador Prime:
Teste Automatico
ou Teste Manual
Acende e Apaga
os LEDs em
Sequência
N
É 13A ou
20A ou 32A
ou 63A?
Inicializa as
Variáveis
Globais
SN
Fim
Inicializa todos os
Objectos: Background
etiquetas e Botões
Inicializa todos os
Objectos: Background
etiquetas e Botões
N
N
Inicializa o
Layout
TesteManual
Azula Claro
Acende LED
com a côr
Verde
S
É Igual
ao Estado
Enviado?
Envia Comando
para Bluetooth
Micro começar
sequência
É clica
Seta Rosa
Direita?
Inicializa o
Layout
Escolhas da
Corrente
S
N
SS
Utilizador Prime:
Botão Inicio ou
Seta Vermelha
Acima
N
Envia
Comando para
Bluetooth
Volta
Escolha de
Corrente
Inicializa todos os
Objectos: Background
etiquetas e Botões
Recebe
resposta
Bluetooth
Estados A ou
B ou C
Inicializa todos os
Objectos: Background
etiquetas e Botões
N
Recebe
resposta
Bluetooth
Estados A ou
B ou C
S
N
S
Inicializa o
Layout
Escolhas da
Corrente
É Seta
Acima
Vermelha?
Envia
Comando
Bluetooth
Estado D ou
E ou F
SIMULADOR DE VEÍCULO ELÉCTRICO MICROCONTROLADO POR BLUETOOTH
Envia
Comando para
Bluetooth
12A, 20A,
32A, 63A
É Teste
Automático
?
127. MOD.AFTEBI.P-077.REV01
127 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
N
Principio
Inicializa o
Layout
Help_Main
___Esta
Desconectado?
Mostra os
Dispositivos
Emparelhados
Previamente
Fim
S
Sai dos
Menus
Sai dos Menus
e sem Acção
Fluxograma dos menus do dispositivo android
S
Clicou
Sair?
Inicializa o
Layout
Clicou
Ajuda?
N
N
__Clicou
Desconectar?
Clicar no
Dispositivo a
Ligar
Inicializa
os Objectos:
Scrollview,
Labels
S
N
Mostra as
Opções
Desliga o
Bluetooth
Sockets
Espera Acção
do
Utilizador
Clicar nos Menus
N
S
Ja Esta
Conectado?
N
Espera Acção
do Utilizador
Estabelece
Comunicação
com
Dispositivo
N
__Clicou
Voltar e
Está Em
Ajuda?
Sai da
Aplicação
S
Inicializa
os Objectos
desse Layout
S
S
Volta ao
Layout
prévio
Clicou
Conectar?
Disconecta
o
Dispositivo
128. MOD.AFTEBI.P-077.REV01
128 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
CONCLUSÕES
Em todos os tutoriais tentei aprofundar as opções dos objectos e acrescentar inovações aos
tutoriais. Criei Ferramentas adicionais para me ajudar a atingir o objectivo principal, tal como
faço em electrónica quando faço projectos também vou criar ferramentas auxiliares para
atingir o objectivo principal. “Inovação não é só criar coisas novas mas também
melhorar coisas existentes dar novos usos ou acrescentar novas funcionalidades”.
Dificuldades com o Projecto:
Dificuldade de começar do zero por serem novas linguagens de programação para
aprender (Java e XML) menos dificuldade com Basic4Android ainda assim tive de
recomeçar do zero.
Componentes e módulos não chegaram no prazo esperado.
Nem sempre as buscas na internet traduziram-se em resultados práticos, ou material
encontrado não ajudavam muito.
Devido a não ter as ferramentas gráficas adequadas, não consegui melhores
resultados em termos gráficos com a resolução gráfica dos objectos criados.
Foi um desafio que eu aceitei proposto pelos professores em questão responsáveis pelo
projecto. Tratava-se dum projecto de controlo dum posto de carregamento de Veículos
Eléctricos através dum Dispositivo móvel com Bluetooth. Completei as metas definidas, mas
ainda assim precisa de algumas melhorias mas no cômputo geral foi bom.
129. MOD.AFTEBI.P-077.REV01
129 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
BIBLIOGRAFIA E REFERÊNCIAS
Buscas na Google de exemplos e Tutoriais para o Eclipse de programação em Java e XML para
Android.
http://www.google.com/#hl=pt-
BR&gs_nf=3&cp=32&gs_id=5&xhr=t&q=android+wifi+manager+sample+code&pf=p&output=search&sclient=psy-
ab&oq=android+wifi+manager+sample+code&gs_l=&pbx=1&bav=on.2,or.r_gc.r_pw.r_qf.&fp=eb68db5b8ae228f1&bpcl=
36601534&biw=994&bih=607
Buscas na Google de exemplos e Tutoriais para o Basic4Android.
https://www.google.com/#hl=pt-
PT&gs_rn=1&gs_ri=hp&tok=7akQuF0H22bTM2KmcTAKtw&pq=basic4android%20multimedia%20helpscrollview%20&c
p=19&gs_id=g4m&xhr=t&q=basic4android+image+helpscrollview&pf=p&tbo=d&sclient=psy-
ab&oq=basic4android+image+helpscrollview+&gs_l=&pbx=1&bav=on.2,or.r_gc.r_pw.r_qf.&bvm=bv.1355534169,d.d2k
&fp=17d1b715040bd287&bpcl=40096503&biw=1245&bih=836
Buscas no Youtube de Exemplos práticos e Tutoriais para o Eclipse e para o Basic4Android.
http://www.youtube.com/watch?v=3aBJ2_sLYbA&feature=youtu.be
PDFs dos Tutoriais para o Eclipse e o Basic4Android.
Eclipse:
Apostila de Android Programando Passo a Passo 3ª Edição.pdf
Apostila de Android Programando Passo a Passo 4ª Edição.pdf
Professional Android Application Development.pdf
Basic4Android:
B4A-Tutorials.pdf
Beginners Guide.pdf
UsersGuide.pdf
B4ACodeSnippets.pdf
KeyWords_Views.pdf
130. MOD.AFTEBI.P-077.REV01
130 De 130
(SIMULADOR DE VEICULO ELECTRICO PARA POSTO DE
CARREGAMENTO RÁPIDO)
FORMANDO: (PAULO DUARTE)
DATA _05_/_03_/__2013__
Nas Diversas Sites para Eclipse:
http://www.developer.com/ws/android
SDK do Android e o plugin do Android (mesmas versões citadas acima ou
superiores):
http://code.google.com/android/download.html
Eclipse Europa (ou superior)
http://www.eclipse.org/downloads/
JDK pelo link abaixo:
http://java.sun.com/javase/downloads/index.jsp
Na Site oficial do Basic4Android.
http://www.basic4ppc.com/forum/basic4android-getting-started-tutorials/8233-android-slidingpanels-simple-way-
create-sliding-layouts.html
ANEXOS
Datasheets dos componentes utilizados
Microcontrolador da Microchip:
PIC16F87X.pdf
Integrados CMOS:
CD4014-4021.pdf
CD4094.PDF
CD4093.PDF
AT commands – JY-MCU Bluetooth Wireless Serial Port Module.pdf
Setup JY-MCU BT BOARD v1.2 « Alejandro Pirola.pdf
PDFs dos resultados intermédios
Imagens de screenshots das aplicações