O nosso projeto Estacionamento Inteligente irá possibiliatar o cliente a reservar sua vaga pela internet, onde iremos desenvolver uma página em PHP para a tal função.
Com isso estamos testando a conexão da Arduino com a porta COM3, onde o PHP irá ler e escrever se comunicando com a Arduino.
O código abaixo é compilado na Arduino, que fará o um led ligado ao pin13 ficar piscando.
int ledPin = 13;
int usbnumber = 0;
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
usbnumber = Serial.read();
}
if (usbnumber > 0) {
if (usbnumber % 2 == 0){
digitalWrite(ledPin, HIGH);
delay(300);
digitalWrite(ledPin, LOW);
delay(300);
}else{
digitalWrite(ledPin, HIGH);
delay(300);
digitalWrite(ledPin, LOW);
delay(300);
digitalWrite(ledPin, HIGH);
delay(300);
digitalWrite(ledPin, LOW);
delay(300);
}
usbnumber = 0;
}
}
Com o código acima escrito na microcontroladora da Arduino, escrevemos esse código em PHP para escrever e a partir daí escrever na Arduino através da porta COM3, que irá fazer o led piscar.
<?php
$fp =fopen("com3", "w");
while (true){
$i = 10;
echo "Wrote $i - O LED should flash (" . ($i % 2 == 0 ? ' 1 time ' : '2 times ') . ")\r\n";
fwrite($fp, $i);
sleep(3);
}
fclose($fp);
?>
quarta-feira, 10 de outubro de 2012
terça-feira, 9 de outubro de 2012
Programação para testar o Display e LDR
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 6, 4, 3, 2);
int p = 0; // Variavel onde e guardado o valor lido do LDR
int ldr0 = 0; // Pino onde vamos ligar a LDR
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(20, 2);
// Print a message to the LCD.
lcd.print("Inove Engenharia");
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
p = analogRead(ldr0); // O valor que irá ser lido na porta analogica numero 6 irá ser guardado na variavel “valor”
if (p > 200) {
lcd.print("Vago ");
}
if (p <= 200) {
lcd.print("Ocupado");
}
}
quarta-feira, 19 de setembro de 2012
Maquete pronta........
Já construimos nossa maquete, como visto anteriormente no projeto. Agora com ela construída iremos começar a trabalhar na parte elétrica com sensores LDR, LED's e display digital de 2x16....
segunda-feira, 17 de setembro de 2012
Início
Hoje estamos dando início a criação do novo modelo do nosso Estacionamento Inteligente, onde semestre passado criamos a idéia, nesse estamos melhorando.
Implementaremos mais vagas e terá dois pisos G1 e G2 o que deixa o protótipo mais próximo da realidade, levando- em conta o escassez de espaço nos grandes centros urbanos.
Entrou no grupo Guilherme Franco (Eng. de Computação) no lugar de Luis Peixoto (Eng Mecânica) pelo fato de Luis ter mudado de Instituição, porém o mesmo ainda continua ativo no nosso grupo de pesauisa e na implementação do projeto....
Implementaremos mais vagas e terá dois pisos G1 e G2 o que deixa o protótipo mais próximo da realidade, levando- em conta o escassez de espaço nos grandes centros urbanos.
Entrou no grupo Guilherme Franco (Eng. de Computação) no lugar de Luis Peixoto (Eng Mecânica) pelo fato de Luis ter mudado de Instituição, porém o mesmo ainda continua ativo no nosso grupo de pesauisa e na implementação do projeto....
Abaixo as imagens do nosso novo protótipo............
terça-feira, 5 de junho de 2012
Essa é a programação que irá controlar os sensores e os displays
int v0 = 0; // Variavel onde e guardado o valor lido do LDR
int v1 = 0; // Variavel onde e guardado o valor lido do LDR
int v2 = 0; // Variavel onde e guardado o valor lido do LDR
int v3 = 0; // Variavel onde e guardado o valor lido do LDR
int v4 = 0; // Variavel onde e guardado o valor lido do LDR
int v5 = 0; // Variavel onde e guardado o valor lido do LDR
int ldr5 = 5; // Pino onde vamos ligar a LDR
int ldr4 = 4; // Pino onde vamos ligar a LDR
int ldr3 = 3; // Pino onde vamos ligar a LDR
int ldr2 = 2; // Pino onde vamos ligar a LDR
int ldr1 = 1; // Pino onde vamos ligar a LDR
int ldr0 = 0; // Pino onde vamos ligar a LDR
int b=2, a=3, f=7, g=8, dp=20, c=4, d=5, e=6, bb=30, aa=9, ff=12, gg=13, dpp=36, cc=28, dd=10, ee=11, it=1023.9;
void setup(){
Serial.begin(9600); // Inicia A comunicação da porta Serial para que possamos ver o valor do LDR
pinMode(b, OUTPUT);
pinMode(a, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
pinMode(dp, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(bb, OUTPUT);
pinMode(aa, OUTPUT);
pinMode(ff, OUTPUT);
pinMode(gg, OUTPUT);
pinMode(dpp, OUTPUT);
pinMode(cc, OUTPUT);
pinMode(dd, OUTPUT);
pinMode(ee, OUTPUT);
}
void loop(){
v5 = analogRead(ldr5); // O valor que irá ser lido na porta analogica numero 6 irá ser guardado na variavel “valor”
v4 = analogRead(ldr4); // O valor que irá ser lido na porta analogica numero 6 irá ser guardado na variavel “valor”
v3 = analogRead(ldr3); // O valor que irá ser lido na porta analogica numero 6 irá ser guardado na variavel “valor”
v2 = analogRead(ldr2); // O valor que irá ser lido na porta analogica numero 6 irá ser guardado na variavel “valor”
v1 = analogRead(ldr1); // O valor que irá ser lido na porta analogica numero 6 irá ser guardado na variavel “valor”
v0 = analogRead(ldr0); // O valor que irá ser lido na porta analogica numero 6 irá ser guardado na variavel “valor”
digitalWrite(b, LOW);
digitalWrite(a, LOW);
digitalWrite(f, LOW);
digitalWrite(g, LOW);
digitalWrite(dp, LOW);
digitalWrite(c, LOW);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
//////////////////////////////////////////////////////////////////////////////////////////////////// 1
if (v5 > it) {
digitalWrite(b, HIGH);
digitalWrite(a, LOW);
digitalWrite(f, LOW);
digitalWrite(g, LOW);
digitalWrite(dp, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
}
/////////////////////////////////////////////////////// 2
if ((v4 > it)&&(v5 < it)) {
digitalWrite(b, HIGH);
digitalWrite(a, HIGH);
digitalWrite(f, LOW);
digitalWrite(g, HIGH);
digitalWrite(dp, LOW);
digitalWrite(c, LOW);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
}
///////////////////// 3
if ((v3 > it)&&(v4 < it)&&(v5 < it)) {
digitalWrite(b, HIGH);
digitalWrite(a, HIGH);
digitalWrite(f, LOW);
digitalWrite(g, HIGH);
digitalWrite(dp, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, LOW);
}
///////////////////////////////////////// 1
if ((v2 > it)&&(v3 < it)&&(v4 < it)&&(v5 < it)) {
digitalWrite(b, HIGH);
digitalWrite(a, LOW);
digitalWrite(f, LOW);
digitalWrite(g, LOW);
digitalWrite(dp, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
}
//////////////////////////2
if ((v1 > it)&&(v2 < it)&&(v3 < it)&&(v4 < it)&&(v5 < it)) {
digitalWrite(b, HIGH);
digitalWrite(a, HIGH);
digitalWrite(f, LOW);
digitalWrite(g, HIGH);
digitalWrite(dp, LOW);
digitalWrite(c, LOW);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
}
//////////////////3
if ((v0 > it)&&(v1 < it)&&(v2 < it)&&(v3 < it)&&(v4 < it)&&(v5 < it)) {
digitalWrite(b, HIGH);
digitalWrite(a, HIGH);
digitalWrite(f, LOW);
digitalWrite(g, HIGH);
digitalWrite(dp, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, LOW);
}
///////////////////////////////////////// 0
if ((v0 < it)&&(v1 < it)&&(v2 < it)&&(v3 < it)&&(v4 < it)&&(v5 < it)) {
digitalWrite(b, HIGH);
digitalWrite(a, HIGH);
digitalWrite(f, HIGH);
digitalWrite(g, LOW);
digitalWrite(dp, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
}
///////////////////////////display 2
////////////////////////////////////
if ((v3 > it)&&(v4 > it)&&(v5 > it)) {
digitalWrite(bb, LOW);
digitalWrite(aa, LOW);
digitalWrite(ff, HIGH);
digitalWrite(gg, LOW);
digitalWrite(dpp, LOW);
digitalWrite(cc, LOW);
digitalWrite(dd, LOW);
digitalWrite(ee, HIGH);
}
if ((v3 < it)&&(v4 < it)&&(v5 < it)) {
digitalWrite(bb, LOW);
digitalWrite(aa, HIGH);
digitalWrite(ff, HIGH);
digitalWrite(gg, HIGH);
digitalWrite(dpp, LOW);
digitalWrite(cc, LOW);
digitalWrite(dd, HIGH);
digitalWrite(ee, HIGH);
}
if (((v0 < it)&&(v1 < it)&&(v2 < it)&&(v3 < it)&&(v4 < it)&&(v5 < it))) {
digitalWrite(bb, LOW);
digitalWrite(aa, LOW);
digitalWrite(ff, HIGH);
digitalWrite(gg, LOW);
digitalWrite(dpp, LOW);
digitalWrite(cc, LOW);
digitalWrite(dd, HIGH);
digitalWrite(ee, HIGH);
}
}
Assinar:
Postagens (Atom)
















