Ansteuerung per cmd mit Codezeilen aus einem Sprachprogramm

Hallo liebes Forum
Teil 2

Hallo liebes Forum

Meine Arbeit ist fast fertig, jedoch habe ich noch zwei Probleme.

Die poste ich auch in zwei Themen mit der gleichen Einführung.

Es ist ein Hebearm der einen Joystick trägt. Dieser wird mit den Lippen

gesteuert. Wenn die Person sprechen will, muss der Joystick angehoben

und bei der Computerarbeit am Monitor wieder abgesenkt werden.

Die Person kann keine Maus oder Tastatur bedienen.

Dazu verwende ich den Arduino Uno. Über eine Relaisplatte bekommt

der Controller ein Ein- und Ausschaltsignal via USB, welches von einem

Sprachprogramm gesendet wird.

Der Controller steuert den Hebewinkel des Servomotors und regelt

die Geschwindigkeit beim Heben und Senken. Zusätzlich gibt es einen

Wipp-Taster, mit dem man zur Positionierung des Joysticks am Mund

den Servomotor manuell Heben und Senken kann. Soweit …

Das zweite Problem in diesem separaten Thema:

Ansteuerung per cmd mit Codezeilen aus einem Sprachprogramm:

Das Sprachprogramm kann per Schritt-für-Schritt-Programmierung

ein Programm aufrufen, den on oder off-Button für das Relais klicken

und das Programm wieder schließen. Allerdings ist in der Zeit auf

der Oberfläche des Desktops nichts anderes möglich und es dauert

gut 2 Sekunden, bis alles erledigt ist. Berührt die Person den Joystick,

wird die Routine fehlgeleitet und alles kommt durcheinander.

Eine Korrektur mit der Maus oder ein Klick mit der Maus ist

der Person nicht möglich!

In der mitgelieferten Software zu der Relaisplatte habe ich eine

Programmierzeile gefunden, die wohl per cmd den Befehlt direkt

umsetzen könnte. (vermute ich)

CommandApp_USBRelay afEd5 öffnen 255

Wie kann ich das in das Skript vom Sprach-Programm einfügen?

Es bietet eine direkte Programmierung per Skript an und gibt dieses

Fenster als Basis vor. Wie kann ich den Code einfügen und würde es

funktionieren? (Möchte da keine Experimente am PC wagen)
*

Danke für die Unterstützung, ggf. gern auch Links die weiterhelfen,

bzw. einen Verweis auf ein anderes Forum.

Oliver

Im englischen Teil des Forum müssen die Beiträge und Diskussionen in englischer Sprache verfasst werden. Deswegen wurde diese Diskussion in den deutschen Teil des Forums verschoben.

mfg ein Moderator.

Dein Schreibstil, immer eine Leerzeile zwischen den Zeilen einzufügen, erschwert das Lesen am Monitor unheimlich.

Gruß Tommy

2 Likes

'Der Controller' ist das ein Arduino?
Aber auch sonst bin ich vermutlich nicht der einzige, der nicht versteht worum es geht.

... es ist ein mechanischer Arm mit Servo, der per Sprachsteuerung angehoben oder gesenkt wird.
Um vom PC den Arduino Uno anzusteuern, habe ich eine Relais-Platine verbaut, die das Signal
in ein einfaches Ein-Aus-Singnal umsetzt. Der geht an den Controller und steuert den Servo.
Hinzu kommen ein paar Funktionen, wie hoch der Arm geht (Winkel am Servo) und mit welcher
Geschwindigkeit er in die jeweilige Position fährt.

In meiner Frage geht es darum, wie ich das Signal besser an den Controller heranführe.
Derzeit ist es mit einem internen Programm der Sprachsteuerung geregelt, welches ein kleines
Programm mit Fenster aufgeruft und per TAB den richtige Button ausgewählt und das
Fenster wird wieder geschlossen.

Relais-Fenster

Da diese Art anfällig für Fehlfunktionen ist, besteht im Sprachprogramm auch die Möglichkeit
ein kleines Skrip zu schreiben, welches das Relais anspricht. (zur Eingabe, siehe oben)
Dazu suche ich, wie man das Skript schreibt.
Vielleicht ist es ja nur eine Zeile: CommandApp_USBRelay afEd5 öffnen 255

Mein Code für den Controller ist in einem anderen Thema im Forum gepostet.

Ich weiß, es ist nicht so einfach zu beschreiben, was meine Frage ist.
Wie schreibe ich ein Skrip für das Sprachprogramm?
Ich habe bereits sehr viel Zeit in das Projekt investiert und wäre
einfach extrem dankbar, wenn mir einfach jemand zur Lösung verhilft.

Da hier keiner Dein "Sprachprogramm" kennt (Du gibst ja keine konkreten Infos dazu raus) wird das wohl keiner irgendwo einbauen können.

Merksatz: Die mögliche Hilfe ist höchstens so gut, wie die Qualität Deiner Informationen.

Gruß Tommy

Indem Du irgendwo fragst, wo man weiß welches Sprachprogramm Du hast und es auch kennt.
Grüße Uwe

Das Sprachprogramm ist das Dragon Pro 15.

Auch wenn man um Hilfe bittet, kann man nur darum bitten,
was man schon kennt. Für mich ist es ein Prozess und wenn
Ihr Infos braucht, ich gebe sie gern.

Hallo Uwe,
ich hoffte und hoffe, dass es recht einfach wäre.

Meine Hilfe ist ehrenamtlich, sehr viele Stunden invenstiert und hoffe im Forum,
dass jemand das Problem erkennt und es ohne Mühe lösen kann.

Was immer "Dragon Pro 15" sein mag, frag/such doch dort mal ?
Falls da irgendeine Verbindung zu 'Arduino' besteht, weiß das dort eher jemand als dass du hier jemanden findest, dem 'Dragon Pro 15' ein Begriff ist.

Hier ein link zum Prog.: Hersteller?

Danke,
es war ein Versuch wert ...
Ich werde beim Support von Nuance/Dragon telefonisch nachfragen.
Mit den Hilfeseiten des Programmes bin ich bereits sehr vertraut.

Falls jemand im Forum dennoch eine Idee hat, jederzeit gern ...

Hier die Zeile, die ich gesucht hatte:

X = Shell("C:\OrdnerXY\CommandApp_USBRelay afEd5 open 255")

Einfach in das Skripfenster einsetzen und es läuft.
Die Adresse "afEd5" für das Relais wurde von einem
anderen Programm ermittelt/ausgelesen.
Soweit ...

Schön, wurdest du auch die Lösung und Sketch einfügen?
Davon lebt das Forum, nicht nur das, nächster was so ein Problem hat findet auch Hilfe, nicht nur Aussage

Hallo,
leider ist das die Lösung, so kurz und einfach.
Das andere Programm ist Teil einer zur Relais-Platte mitgeliefertem Tool.
"USBRelay libary" des "ARCELI SRD-05VDC-SL-C 2-Wege 5V Relais-Modul Kostenloser Treiber USB Control Switch PC Intelligent Control". Die Anwendung heißt "GuiApp_English" zeigt dann die Adresse des Relais an.
Hier noch der Programmcode als Screeshot:
2

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.