Arduino Forum upgrade scheduled for Monday, October 20th, 11am-4pm (CEST). Sorry for the inconvenience!
Pages: [1]   Go Down
Author Topic: Arduino Perdendo Comunicação com PHP  (Read 1322 times)
0 Members and 1 Guest are viewing this topic.
Rondonia
Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Boa Tarde, estou tendo um problema com a comunicação com o PHP e o Arduíno,
consigo ligar e desligar uma porta no Arduíno por um certo tempo, de repente do nada ele não comunica mais.

Ai tenho que desligar o Arduíno e ligar novamente, assim volta a funcionar.    smiley-confuse

Estou usando:
Arduino MEGA 1280, e PHP + Jquery Mobile, WAMPSERV.


Segue o Código :

Code:
<<Arduíno>>
int Pino = 13;
int usbnumber = 1 ;
 
void setup() {
    pinMode(Pino, OUTPUT); 
    Serial.begin(9600);
}
void loop() {
   if (Serial.available() > 0) {
        usbnumber = Serial.read();
   }
    if (usbnumber == '1') {
          digitalWrite(Pino, LOW); //desliga   
    }
    if (usbnumber == '2'){
          digitalWrite(Pino, HIGH); //liga
        } 
}



Code:
<?php 
$comPort 
"com2"
if (isset(
$_POST["rcmd"])) { 
    
$rcmd $_POST["rcmd"]; 
switch (
$rcmd) { 
    case 
"1"
$fp =fopen($comPort"w+"); 
fwrite($fp,'1'); 
fclose($fp); 
    break; 
   case 
"2"
        
$fp =fopen($comPort"w"); 
fwrite($fp,'2'); 
fclose($fp); 
break;    
default:
die('???'); 

}
?>


<html>
<head>
<title>SAR - Sistema de Automacao Residencial WEB</title>
<link href="_css/jquery.mobile.css" type="text/css" rel="stylesheet" />
<script src="_js/jquery-1.4.3.min.js"></script>
<script src="_js/jquery.mobile-1.0a3.min.js"></script>
</head>
<form method="post" action="">
<body>

<div data-role="page">
<div data-role="header">
<h1>Controle Arduino</h1>
</div><!-- /header -->
<div data-role="content">
<!-- ON/Off -->
<div data-role="fieldcontain">
<label for="slider2">Liga/Desliga 13:</label>
<!--<select name="slider2" id="slider2" data-role="slider" onchange="$.post('arduino.php',{rcmd:this.value},function(data){$('#resposta').empty().append(data)});">-->
<select name="slider2" id="slider2" data-role="slider" onchange="$.post('formulario.php',{rcmd:this.value});">
<!--<select name="slider2" id="slider2" data-role="slider"> -->
<option value="1">Ligar</option>
<option value="2">Desligar</option>
</select>
</div>

</div><!-- /content -->

<div data-role="footer">
<h2>SAR - Sistema de Automação Residencial WEB</h2>
</div><!-- /header -->
</div><!-- /page -->
</form>
</body>
</html>



Logged

Forum Moderator
São Paulo/SP/Brazil
Offline Offline
Sr. Member
*****
Karma: 2
Posts: 305
Brazilian Arduino Team
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

tenta assim:
Code:
int Pino = 13;
int usbnumber = 1 ;
 
void setup() {
    pinMode(Pino, OUTPUT); 
    Serial.begin(9600);
}
void loop() {
   if (Serial.available() > 0) {
        usbnumber = Serial.read();
        if (usbnumber == '1') {
             digitalWrite(Pino, LOW); //desliga   
        } else if (usbnumber == '2') {
              digitalWrite(Pino, HIGH); //liga
        } 
   }
}

desta maneira você só muda o pino quando recebe alguma coisa. é bem estranho porque o código é simples.
Logged

Rondonia
Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

mas será se implica na comunicação?
Logged

Forum Moderator
São Paulo/SP/Brazil
Offline Offline
Sr. Member
*****
Karma: 2
Posts: 305
Brazilian Arduino Team
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

mas será se implica na comunicação?
não entendi!
Logged

Rondonia
Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

A comunicação do Arduíno, por que do nada a pagina Web não se comunica com o Arduíno,  vc pode clicar em ligar ou desligar que nao responde nada.
Logged

Forum Moderator
São Paulo/SP/Brazil
Offline Offline
Sr. Member
*****
Karma: 2
Posts: 305
Brazilian Arduino Team
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

tenta colocar um LED piscando igual o exemplo "Blinky" no seu código e ver se o arduino está travando mesmo(o LED parar de piscar)... como eu disse é muito estranho o que está acontecendo.
Logged

Rondonia
Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bom coloquei ele "Blinky" fica piscando normal, nao parou nem um pouco, agora to preocupado, será se o PHP irá trabalhar bem com a porta serial. Por que ta estranho, o site funciona normal, mas não comunica com o Arduino.
Logged

Forum Moderator
São Paulo/SP/Brazil
Offline Offline
Sr. Member
*****
Karma: 2
Posts: 305
Brazilian Arduino Team
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

O mega1280 tem reset automático. Toda vez que a porta serial é aberta no PHP ele reseta o seu arduino. Isto deve estar causando algum problema já que você está resetando ele a cada chamada na sua página PHP.

Como eu disse tem algumas maneiras de fazer isso mas nenhuma é muito simples como adicionar o código. Da uma procurada que você vai achar um método de tirar um resistor do seu mega e resolver o seu problema.
Logged

Rondonia
Offline Offline
Newbie
*
Karma: 0
Posts: 27
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ja estou utilizando um resistor.    smiley-confuse
Logged

Pages: [1]   Go Up
Arduino Forum upgrade scheduled for Monday, October 20th, 11am-4pm (CEST). Sorry for the inconvenience!
Jump to: