kramann.info
© Guido Kramann

Login: Passwort:










2.7 Externe Hardware mit Javascript ansteuern

2.7 Control external hardware with Javascript (EN google-translate)

2.7 Kontroluj zewnętrzny sprzęt za pomocą Javascript (PL google-translate)

Wie kann man mit einem PC-Programm elektrische Schaltvorgänge ausführen, oder elektrische Signale von einer Hardware empfangen?
How to use a PC program to perform electrical switching or receive electrical signals from hardware?
Jak używać programu komputerowego do przełączania elektrycznego lub odbierania sygnałów elektrycznych ze sprzętu?

Bei älteren Rechnern gab es den Parallel-(Drucker)-Port. Es gibt Möglichkeiten an dessen Pins mit ca. 100kHz Pegelwechsel durchzuführen und auch Signale zu empfangen.

Older computers had the parallel (printer) port. There are possibilities at its pins with approx. 100k Perform level change and also to receive signals.

Starsze komputery miały port równoległy (drukarkę). Na jego piny są możliwości z ok. 100 k Dokonaj zmiany poziomu, a także odbieraj sygnały.

Mit der Verschlankung der Rechner und der Einführung von USB verschwanden diese Ports. Die COM-Schnittstelle für serielle datenübertragung hat sich etwas länger gehalten, ist aber auch nur noch selten bei heutigen Rechnern nativ vorhanden. Hier kann allerdings nicht mehr direkt geschaltet werden, sondern eine serielle Nachricht muß an ein anderes Gerät geschickt und von diesem interpretiert werden.

With the streamlining of the computers and the introduction of USB these ports disappeared. The COM interface for serial data transmission has lasted a bit longer, but is also only rarely present on today's computers natively. Here, however, can not be switched directly, but a serial message must another device is sent and interpreted by it.

Dzięki usprawnieniu komputerów i wprowadzeniu USB te porty zniknęły. Interfejs COM do szeregowej transmisji danych trwał trochę dłużej, ale jest również rzadko obecny na dzisiejszych komputerach. Tutaj jednak nie można przełączać bezpośrednio, ale musi to być wiadomość szeregowa inne urządzenie jest wysyłane i interpretowane przez niego.

Derzeit ist die einfachste Möglichkeit für eine Kommunikation mit einem externen Gerät vom PC aus, die verwendung einer USB-Emulation einer seriellen Schnittstelle. Dies wird im folgenden die Grundlage für entsprechende Kommunikation mit externer Hardware sein. Als Beispiel und einfachen flexibel einzusetzenden Ausgangspunkt wird ein Arduino-Micro verwendet, der bereits eine USB-seriell-Schnittstelle besitzt.

Currently, the easiest way to communicate with an external Device from the PC, using a USB emulation of a serial interface. This will be the basis for appropriate communication with external Be hardware. As an example and simple flexible starting point will used an Arduino Micro, which already has a USB serial interface.

Obecnie jest to najprostszy sposób komunikowania się z zewnętrznym Urządzenie z komputera, za pomocą emulacji USB interfejsu szeregowego. Będzie to podstawa do właściwej komunikacji z zewnętrznymi Bądź sprzętowy. Jako przykład i prosty elastyczny punkt wyjścia będz użył Arduino Micro, który ma już interfejs szeregowy USB.

Grundsätzlich ist ein Webbrowser nicht dafür gedacht, Hardware auf einem Client-Rechner anzusprechen.

Basically, a web browser is not intended to address hardware on a client machine.

Zasadniczo przeglądarka internetowa nie jest przeznaczona do adresowania sprzętu na komputerze klienta.

Möglich wäre dies durch die Kommunikation mit einem lokalen Server, der wiederum über externe Programme die Hardware anspricht.

This would be possible by communicating with a local server, which in turn has external programs the hardware responds.

Byłoby to możliwe dzięki komunikacji z lokalnym serwerem, który z kolei ma zewnętrzne programy sprzęt odpowiada.

Es gibt einige Plugins für Webbrowser, die diesen in seinen Fähigkeiten entsprechend erweitern. Für Arduino gibt es das Node.js-Modul "Johnny Five":

There are some plugins for web browsers, which extend this according to its capabilities. For Arduino there is the Node.js module Johnny

Istnieje kilka wtyczek do przeglądarek internetowych, które rozszerzają to w zależności od jego możliwości. Dla Arduino dostępny jest moduł Node.js Johnny

"Johnny Five"-Homepage http://johnny-five.io/

Über eine spezielle Firmware "StandardFirmata" kann der Arduino dann in die Lage versetzt werden, seriell an ihn geschickte Codesequenzen, die in einem Javascript-Dokument formuliert werden, zu interpretieren.

Using a special firmware standard company, the Arduino can then be enabled serially sent to him code sequences that are formulated in a Javascript document to interpret.

Korzystając ze standardowej firmowej wersji oprogramowania, Arduino można włączyć seryjnie wysyłane do niego sekwencje kodu sformułowane w dokumencie JavaScript interpretować.

Dieser Weg wird hier aus folgenden Gründen nicht verfolgt:

This route is not followed here for the following reasons:

Ta droga nie jest tu przestrzegana z następujących powodów:

  • Das Interpretieren von Code auf einem Mikrocontroller ist ein Overhead, der hier nicht benötigt wird und schiebt sich hemmend zwischen den direkt zu lösenden Aufgaben.
  • Der Ansatz verbirgt sehr stark die Komplexität der Sache und erschwert ein tiefergehendes Verständnis. D.h. man lernt viel über das verwendete proprietäre Werkzeug und sehr wenig allgemein Nützliches.
  • Man macht sich abhängig vom Zusammenspiel mehrerer Softwarelösungen von Drittanbietern.

Statt dessen soll ein elementarerer Weg eingeschlagen werden:

Instead, a more elementary path should be taken:

Zamiast tego należy zastosować bardziej elementarną ścieżkę:

Auf dem Clientrechner wird ein lokaler Server installiert, der die Anfragen der Webseite entgegennimmt und eine externe Hardware ansteuert.

On the client computer, a local server is installed, which receives the requests of the website and drives an external hardware.

Na komputerze klienckim zainstalowany jest serwer lokalny, który odbiera żądania witryny i napędza zewnętrzny sprzęt.

Die verwendeten Mittel:

The means used:

Użyte środki:

  • XAMPP-Server (Kombination aus Apache-Server, MySQL, PHP und Perl),
  • Die Fähigkeit der Server-seitigen Skriptsprache PHO Port-Kommunikation durchzuführen,
  • POST-Anfragen mit Hilfe von Formularen auf einer Webseite und im weiteren Verlauf direkt in Javascript XMLHttpRequest.

Der anzusprechende Mikrocontroller ist ein Arduino-Micro. Da aber lediglich die Fähigkeit der seriellen Kommunikation genutzt wird, ist der hier verfolgte Ansatz allgemein nutzbar.

The microcontroller to be addressed is an Arduino Micro. But since only the ability of serial communication is used, the approach used here is generally usable.

Mikrokontroler, do którego należy się odnieść, to Arduino Micro. Ale ponieważ używana jest tylko zdolność komunikacji szeregowej, stosowane tutaj podejście jest ogólnie użyteczne.

Das Szenario wird ausgehend vom Mikrocontroller hin zur Webseite aufgebaut. D.h. Man beginnt mit der Programmierung des Mikrocontrollers, lernt dann etwas über Server-seitige Skripte und schließlich wie deren Verarbeitung von einer Webseite her mit Javascript ausgelöst werden kann.

The scenario is built from the microcontroller to the website. That You start by programming the microcontroller, then learn something about server-side scripts and finally how their processing can be triggered from a web page with Javascrip

Scenariusz jest zbudowany z mikrokontrolera na stronie internetowej. że Zaczynasz od programowania mikrokontrolera, następnie ucz się czegoś na temat skryptów po stronie serwera i wreszcie jak ich przetwarzanie może zostać uruchomione ze strony internetowej z Javascripte