Auteur Topic: USB-relaiskaart en Synology  (gelezen 3092 keer)

Offline fozed

  • Bedankjes
  • -Gegeven: 6
  • -Ontvangen: 0
  • Berichten: 10
USB-relaiskaart en Synology
« Gepost op: 10 augustus 2013, 11:19:34 »
Hallo,
Door mij is een USB-relaiskaart gekoppeld aan DS209 via tttyACM0.
Voor de seriele koppeling is gebruik gemaakt van een php-serial.class,  het geheel is te besturen via de Terminal (command line).
Daarna is een PHP-script gemaakt met hetzelfde doel dit script werkt.
Echter de uitvoering van het script relais3.php  door 1. Browser (apache) of 2. PHP geeft verschillende reactie.
Het PHP-script om relais 3 in te schakelen volgt hieronder
<?php
// Relais 3 inschakelen
// Foutmelding ==> serial.class
   
error_reporting(E_ALL);
   
ini_set('display_errors''1');

// Communicatie kanaal ==> USB-Kaart
require("./php_serial.class.php");

// Commando's ==> Settings USB-Kaart
   
$serial = new phpSerial;
   
$serial->deviceSet("/dev/ttyACM0");
   
$serial->confBaudRate(1200);
   
$serial->deviceOpen();

// Commando's ==> Functie besturing I/O USB-Kaart
   
$serial->sendMessage("O2=1" "\r");
   echo  
$serial->readPort();
   
$serial->deviceClose();
?>

Het stukje code dat het verschil op levert is hieronder weergegeven
                $this->_dHandle = @fopen($this->_device, $mode);
echo " Waarde Handle : " . $this->_dHandle . "<br />";
echo " Waarde device : " . $this->_device . "<br />";
echo " Waarde mode   : " . $mode . "<br />";
                if ($this->_dHandle !== false)
                {
                        stream_set_blocking($this->_dHandle, 0);
                        $this->_dState = SERIAL_DEVICE_OPENED;
                        return true;
                }
Uitgevoerde testen:
1. Browser starten
Adres http://IP-adres/smartcontroller/relais3.php
Reactie van de Browser
 Waarde Handle :
 Waarde device : /dev/ttyACM0
 Waarde mode : r+b
 Warning: Unable to open the device in /volume1/web/smartcontroller/php_serial.class.php on line 160

2 .Uitvoering vanuit Diskstation met PHP
DiskStation> php relais3.php
 Waarde Handle : Resource id #15<br />
 Waarde device : /dev/ttyACM0<br />
 Waarde mode   : r+b<br />

OK
DiskStation>
Einde uitgevoerde testen.
 
Hieruit blijkt dat het Commando " @fopen" uit de regel: " $this->_dHandle = @fopen($this->_device, $mode); " verschillende reactie geeft.
Uitvoering van programma met Browser krijgt de variabele "Handle" geen waarde (zie test 1).
Uitvoering met programma met PHP krijgt de variabele "Handle" de waarde "Resource id #15" (zie test 2).
Wat zou de oorzaak kunnen zijn?
Heeft iemand een hint die kan leiden tot oplossing?

Alvast bedankt voor reactie(s)

Offline fozed

  • Bedankjes
  • -Gegeven: 6
  • -Ontvangen: 0
  • Berichten: 10
Re: USB-relaiskaart en Synology
« Reactie #1 Gepost op: 28 september 2013, 10:41:17 »
Door read/write-rechten aan others te geven in bestand ttyACM0 is besturing op afstand mogelijk geworden.
Hiervoor is gebruik gemaakt van het command  ==>  chmod -R o+rw /dev/ttyACM0.
Hiermee is het probleem opgelost.

Fozed


 

Synology als FTP server werkt niet

Gestart door TolidaBoard FTP, NFS and Samba Server

Reacties: 16
Gelezen: 8468
Laatste bericht 04 oktober 2013, 19:48:01
door thecell
Synology niet (altijd) zichtbaar bij mediaplayers

Gestart door tocraBoard NAS hardware vragen

Reacties: 8
Gelezen: 5152
Laatste bericht 01 december 2013, 21:43:58
door masimo
DNSCrypt op de Synology ?

Gestart door hetregentbuitenBoard Overige software

Reacties: 0
Gelezen: 2575
Laatste bericht 01 februari 2012, 09:29:06
door hetregentbuiten
WDTV live en synology

Gestart door frontcodeBoard FTP, NFS and Samba Server

Reacties: 8
Gelezen: 6342
Laatste bericht 15 april 2012, 14:42:19
door Goner
"Be Your Own Cloud" - Synology DSM promotie video

Gestart door BobBoard Aankoopadvies

Reacties: 0
Gelezen: 4736
Laatste bericht 15 augustus 2011, 11:42:04
door Bob