Auteur Topic: USB-relaiskaart en Synology  (gelezen 3117 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


 

"Be Your Own Cloud" - Synology DSM promotie video

Gestart door BobBoard Aankoopadvies

Reacties: 0
Gelezen: 4889
Laatste bericht 15 augustus 2011, 11:42:04
door Bob
synology assistant probleem

Gestart door loekBoard Windows

Reacties: 21
Gelezen: 12976
Laatste bericht 04 december 2011, 17:24:12
door pinkdot
Synology niet zichtbaar in thuisnetwerk (bij gebruik van WIFI)

Gestart door Wouter0546Board Netwerk algemeen

Reacties: 3
Gelezen: 2046
Laatste bericht 21 juni 2021, 16:56:47
door Plerry
DS1821+ met DSM 7.0 nieuwe synology gebruiker en wat voor mij vreemde zaken...

Gestart door prodigy73Board Synology DSM algemeen

Reacties: 11
Gelezen: 2126
Laatste bericht 25 juli 2021, 21:10:06
door prodigy73
Synology nas met de beste transcoding (Plex)

Gestart door walbergBoard Aankoopadvies

Reacties: 6
Gelezen: 2732
Laatste bericht 01 september 2021, 21:25:58
door DSGebruiker