über browser rs232 oder usb schnittstelle ansprechen

Im Unterforum Projekte im Selbstbau - Beschreibung: Selbstbau von Elektronik und Elektro

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 29 6 2024  08:32:14      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Projekte im Selbstbau        Projekte im Selbstbau : Selbstbau von Elektronik und Elektro

Gehe zu Seite ( Vorherige Seite 1 | 2 )      


Autor
über browser rs232 oder usb schnittstelle ansprechen

    







BID = 523869

HeinzVogel

Schreibmaschine

Beiträge: 1580
Wohnort: Welt
 

  


nein, weiss aber auch grad nicht, wie das am einfachsten ginge...
probiers das skript doch erstmal so..

EDIT: ist 0x2 für DTR passend?

EDIT: Sind noch zwei Fehler im Quelltext, in Zeile 54 folgende müssen die Anführungszeichen (") im inneren Teil noch mit \ ausgeklammert werden.
und in der ersten Zeile fehlt:
include "php_serial.class.php";

_________________
Nein, Frau Bundeskanzlerin. Dezidiert Nein.


[ Diese Nachricht wurde geändert von: HeinzVogel am 25 Mai 2008 18:36 ]

BID = 523883

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

 

  

Das wird so, mit deinem Kenntnisstand, erstmal nix.

Du sagst, du willst "da Spannung haben" - die serielle Schnittstelle sendet Daten seriell, da ändert sich die Spannung dauernd.

Es gibt nun folgende Möglichkeiten:

Es sind Handshake-Leitungen vorhanden, die man auch selbst an- und ausschalten kann, wenn man sich unter Linux io-Zugriff per ioperm besorgt. Damit kann man zwei Leitungen schalten, nämlich DTR und RTS.

Um die Datenleitung TxD zu schalten kann man eine BREAK-Anweisung im entsprechenden Register erzwingen. Dabei wird es möglich, auch die TxD-Leitung separat auf 1 oder 0 zu legen.

Wie man das in PHP macht; keine Ahnung. Du musst auf jeden Fall dem Server den Zugriff auf die serielle Schnittstelle erlauben, die hat der nämlich normalerweise, jenachdem, welcher User den Server startet, garnicht! Direkter IO-Zugriff wird per PHP vermutlich auch nicht möglich sein. Ich kenne mich damit aber nicht aus, nur mit C und C++.

Wenn du aber Daten seriell schreiben kannst, indem du in die entspr. Datei schreibst, dann hänge einfach einen Mikrokontroller ans andere Ende, der den Motor steuert o.ä. So schwer ist das nicht.

Zudem sollen Server sicher sein - da sollte man nicht Fuschen und über Brechen und Biegen doch IO-Zugriff zu erhalten. Kann auch ziemlich in die Hose gehen.

Edit: Und USB ist auch kein Ding. Viele USB-Seriell-Adapter werden ebenfalls als Datei behandelt und es lässt sich dort lesen und schreiben wie in eine Datei. So ist das unter linux. Mit Windows ebenso, nur wie man das dort in Server-Umgebungen integriert - frag mich nicht.
Die letzte Lösung wäre, eine eigene, kleine Servereinheit zu programmieren. Die könnte auch die Zugriffe auf sehr niedriger Ebene vornehmen. Aber auch hier gilt: ist das alles ohne Einschränkung von außen zugänglich, sollte Sicherheit höchste Priorität haben. Zu einfach ist es, Programme, die in C geschrieben wurden, mit Pufferüberläufen unter Kontrolle zu bekommen. Das kann für den Server in die Hose gehen. C-Programme, die traditionell sehr hardwarenah geschrieben werden, haben kaum Sicherheitsmechanismen, um sowas zu verhindern.

_________________


[ Diese Nachricht wurde geändert von: DonComi am 25 Mai 2008 19:08 ]

BID = 523905

HeinzVogel

Schreibmaschine

Beiträge: 1580
Wohnort: Welt

i/o zugriff via php ist möglich, sofern man alle Rechte hab bzw. alles freigegeben hat.
ich würds ja gern selber probieren, krieg nur den blöden apachen nicht zum laufen, aber vielleicht schreib ich da nachher nochwas zu,...

_________________
Nein, Frau Bundeskanzlerin. Dezidiert Nein.

BID = 524061

HeinzVogel

Schreibmaschine

Beiträge: 1580
Wohnort: Welt

Also, bevor der Fred einschläft:



Code :


exec(`mode com1: BAUD=9600 PARITY=N data=8 stop=1 xon=off dtr=1`);
$fp = fopen ("COM33:", "w+");
if (!$fp) {
echo "Uh-oh. Port not opened.";
} else {
$e = chr(27);
$string = $e . "A" . $e . "H300";
$string .= $e . "V100" . $e . "XL1SATO";
$string .= $e . "Q1" . $e . "Z";
echo $string;
fputs ($fp, $string );
fclose ($fp);
}



So gehts, zumindest bei mir.
Allerdings kannst du nur Strings versenden.
Alles andere geht nicht per PHP, mit Java wirst du AFAIK das selbe Prob. haben...
Es gibt aber auch fertige ActiveX die diese Aufgabe übernhemen, oder du lässt dein Port als virtuelle IP rennen, google hilft.

_________________
Nein, Frau Bundeskanzlerin. Dezidiert Nein.


Vorherige Seite      
Gehe zu Seite ( Vorherige Seite 1 | 2 )
Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 16 Beiträge im Durchschnitt pro Tag       heute wurden bisher 2 Beiträge verfasst
© x sparkkelsputz        Besucher : 181575181   Heute : 972    Gestern : 7181    Online : 479        29.6.2024    8:32
1 Besucher in den letzten 60 Sekunden        alle 60.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0242431163788