Haussteuerung per Spracherkennung
Haussteuerung per Spracherkennung
Hallo Leute,
Ich arbeite jetzt schon eine ganze weile mit Profilab. Meine ganze Hauselektrik hängt an dem Server, der im Flur oder übers Handy per Touch alle Lichter und andere Verbraucher Ansteuern kann. Soweit funktioniert alles Prima, bis auf meinen Versuch dass Ganze auch per Sprachbefehl über die Windows Spracherkennung inklusive Windows speech recgnition speech macros anzusteuern.
Wenn ich einen Schalter oder Taster im Programm durch einen Hotkey ersetze geht es ganz normal über die Tastatur mit der gewählten Tastenkombination. Windows speech macros können ja einen Sprachbefehl wie zum Beispiel "Licht Wohnzimmer an" in einen Hotkeybefehl wandeln. Nur tut sich da garnichts, aber der PC erkennt den Befehl. Dann noch ein Fehler mit einer Zugriffsverletzung der ntdll.dll Datei.
Kann mir von euch jemand weiterhelfen oder hat jemand eine Alternative dazu?
mfg
Ich arbeite jetzt schon eine ganze weile mit Profilab. Meine ganze Hauselektrik hängt an dem Server, der im Flur oder übers Handy per Touch alle Lichter und andere Verbraucher Ansteuern kann. Soweit funktioniert alles Prima, bis auf meinen Versuch dass Ganze auch per Sprachbefehl über die Windows Spracherkennung inklusive Windows speech recgnition speech macros anzusteuern.
Wenn ich einen Schalter oder Taster im Programm durch einen Hotkey ersetze geht es ganz normal über die Tastatur mit der gewählten Tastenkombination. Windows speech macros können ja einen Sprachbefehl wie zum Beispiel "Licht Wohnzimmer an" in einen Hotkeybefehl wandeln. Nur tut sich da garnichts, aber der PC erkennt den Befehl. Dann noch ein Fehler mit einer Zugriffsverletzung der ntdll.dll Datei.
Kann mir von euch jemand weiterhelfen oder hat jemand eine Alternative dazu?
mfg
Re: Haussteuerung per Spracherkennung
Hallo,
ich verwende bitvoicer von bitsophia sehr gut und fast keine CPU Belastung
und das Protokoll per com Schnittstelle oder per lan kann man selber festlegen
gruß
Bernhard
ich verwende bitvoicer von bitsophia sehr gut und fast keine CPU Belastung
und das Protokoll per com Schnittstelle oder per lan kann man selber festlegen
gruß
Bernhard
Re: Haussteuerung per Spracherkennung
Ok, Vielen dank erstmal.
Hast du dich da angemeldet oder ist die Software kostenlos?
Hast du dich da angemeldet oder ist die Software kostenlos?
Re: Haussteuerung per Spracherkennung
kannst du mir vielleicht eine kleine Anleitung dazu geben wie du das dann verwendest?
hab noch keine Ahnung von diesem Programm
mfg
hab noch keine Ahnung von diesem Programm
mfg
Re: Haussteuerung per Spracherkennung
Hallo Nochmal,
Also nachdem ich nun Das Programm Bitvoicer heruntergeladen und die Linzenz dazu gekauft habe, hab ich etwas ausprobiert und naja noch nicht sehr viel geschafft.
Das Programm ist eigentlich ganz super. es kann vier Arten von Daten senden die dann ein anderer Port empfängt. Char, Int, Byte und String.
mann muss eine Nullmodemverbindung zwischen zwei Schnittstellen schaffen. Virtuell oder mit der Hardware.
Mein Problem: Ich weiss überhaupt nicht wie z.B ein String den ich sende aussehen muss um ihn in Profilab zu empfangen, und auch nicht mit welchen Bauteil.
Wer kann mir weiterhelfen?
Also nachdem ich nun Das Programm Bitvoicer heruntergeladen und die Linzenz dazu gekauft habe, hab ich etwas ausprobiert und naja noch nicht sehr viel geschafft.
Das Programm ist eigentlich ganz super. es kann vier Arten von Daten senden die dann ein anderer Port empfängt. Char, Int, Byte und String.
mann muss eine Nullmodemverbindung zwischen zwei Schnittstellen schaffen. Virtuell oder mit der Hardware.
Mein Problem: Ich weiss überhaupt nicht wie z.B ein String den ich sende aussehen muss um ihn in Profilab zu empfangen, und auch nicht mit welchen Bauteil.
Wer kann mir weiterhelfen?
-
- Beiträge: 102
- Registriert: Mittwoch 15. April 2009, 10:58
Re: Haussteuerung per Spracherkennung
Suche mal in der Hilfe zu Profilab nach "String".
Re: Haussteuerung per Spracherkennung
oder unter Beispiele\Hardware\\RS232\Nullmodem.prj
Re: Haussteuerung per Spracherkennung
OK, hallo nochmal,
mit dem nullmodem rs232 Beispiel hab ich geprüft ob die virtuelle Verbindung auch wircklich besteht. das klappt,
wenn ich jetzt einen String mit der Spracherkennung sende kommt aber nichts in Profilab an.
anscheinend fehlt mir die nötige Kenntnis über diese Verbindungen.
weil ich irgendwie keine Ahnung habe aus was der String, also vielleicht Anfangszeichen Endzeichen und so weiter besteht.
es gibt ja auch die Möglichkeit ein Byte zu senden aber da kommt auch nichts in Profilab an. weis irgendwie nicht weiter
mit dem nullmodem rs232 Beispiel hab ich geprüft ob die virtuelle Verbindung auch wircklich besteht. das klappt,
wenn ich jetzt einen String mit der Spracherkennung sende kommt aber nichts in Profilab an.
anscheinend fehlt mir die nötige Kenntnis über diese Verbindungen.
weil ich irgendwie keine Ahnung habe aus was der String, also vielleicht Anfangszeichen Endzeichen und so weiter besteht.
es gibt ja auch die Möglichkeit ein Byte zu senden aber da kommt auch nichts in Profilab an. weis irgendwie nicht weiter
Re: Haussteuerung per Spracherkennung
Hi,
hole dir das Programm "hterm" aus dem Netz, damit kannst du genau sehen welche Zeichen (und Steuerzeichen) von deinem Sprachprogramm gesendet werden.
Dann stellst du die Parameter im $COM Baustein so ein, wie sie sein müssen.
Das wars schon.
Gruß MM
PS: hier im Forum findest du auch viele Beiträge, in denen "hterm" angesprochen wird.
hole dir das Programm "hterm" aus dem Netz, damit kannst du genau sehen welche Zeichen (und Steuerzeichen) von deinem Sprachprogramm gesendet werden.
Dann stellst du die Parameter im $COM Baustein so ein, wie sie sein müssen.
Das wars schon.
Gruß MM
PS: hier im Forum findest du auch viele Beiträge, in denen "hterm" angesprochen wird.
Re: Haussteuerung per Spracherkennung
OK,
Vielen Dank für die schnelle Antwort, ich versuche es mal,
mfg
Vielen Dank für die schnelle Antwort, ich versuche es mal,
mfg
Re: Haussteuerung per Spracherkennung
Also,
OK, ich nochmal,
Hab mir jetzt das ganze von hterm anzeigen lassen. Bitvoicer sendet signale. Nur weiss ich nicht wie ich sie in Profilab zu lesen bekomme.
Hängt dass vielleicht mit dem Trennzeichen oder der Definition der Synchronzeichenkette zusammen, weil die Verbindung steht auf jeden fall, aber egal was ich sende (also mit Bitvoicer) kommt nichts in meinen Bauteilen an.
mal wieder Ratlos
OK, ich nochmal,
Hab mir jetzt das ganze von hterm anzeigen lassen. Bitvoicer sendet signale. Nur weiss ich nicht wie ich sie in Profilab zu lesen bekomme.
Hängt dass vielleicht mit dem Trennzeichen oder der Definition der Synchronzeichenkette zusammen, weil die Verbindung steht auf jeden fall, aber egal was ich sende (also mit Bitvoicer) kommt nichts in meinen Bauteilen an.
mal wieder Ratlos
Re: Haussteuerung per Spracherkennung
Hi,
zeig doch mal, wie die eingelesenen Daten in hterm aussehen.
Gruß MM
zeig doch mal, wie die eingelesenen Daten in hterm aussehen.
Gruß MM
Re: Haussteuerung per Spracherkennung
OK,
Muss ich von zuhause aus machen, bin leider auf der Arbeit. Ich melde mich heute Abend mal
mfg
Muss ich von zuhause aus machen, bin leider auf der Arbeit. Ich melde mich heute Abend mal
mfg
Re: Haussteuerung per Spracherkennung
Hallo Leute,
Also jetzt mit etwas verspätung bin ich mal wieder da.
Hab leider viel um die Ohren momentan,
Das was Bitvoicer sendet sieht für mich aus wie Hyroglyphen.
Wenn ich von Profilab aus sende und an einen anderen COM Port empfange, klappt es ja auch.
Was mir aufgefallen ist, ist das Bitvoicer anscheinend auch daten zugesendet werden müssen. Also so stehts in der Bitvoicer Manual.
Ich versuche die Tabelle und die Werte mal aufzulisten. Leider ist alles in Englisch:
Also jetzt mit etwas verspätung bin ich mal wieder da.
Hab leider viel um die Ohren momentan,
Das was Bitvoicer sendet sieht für mich aus wie Hyroglyphen.
Wenn ich von Profilab aus sende und an einen anderen COM Port empfange, klappt es ja auch.
Was mir aufgefallen ist, ist das Bitvoicer anscheinend auch daten zugesendet werden müssen. Also so stehts in der Bitvoicer Manual.
Ich versuche die Tabelle und die Werte mal aufzulisten. Leider ist alles in Englisch:
Re: Haussteuerung per Spracherkennung
Das Bitvoicer Protocol schreibt vor:
The BitVoicer Protocol consists of a set of formatting parameters that must be implemented in order to exchange information between BitVoicer and the microcontrollers. This protocol must be used in both communication directions: BitVoicer microcontroller and microcontroller BitVoicer.
The table below describes the format of the datagrams sent and received by BitVoicer:
Name Byte Position Value Description
Start of Transmission 1 1 Start of Transmission mark
Data Type 2 1 = Char
2 = Int
3 = Byte Indicates the data type
4 = String carried by the datagram
254 = Command
255 = Status
Data Length 3 X Length of the data field in bytes
Data 4 a n X Contains the data itself
n = 3 + Data Length
End of Transmission n + 1 4 End of Transmission mark
Although commands are wrapped according to these parameters, in essence, all exchanged data is a sequence of bytes whose length will vary depending on the data type and the amount of data exchanged.
The first byte in a datagram always must have the value 1 (0x01). This byte marks the beginning of a datagram. The second byte, whose value can be any of those in the Value column of the table above, specifies the data type contained within the Data field. The third byte indicates the length, in bytes, of the Data field. Because the Data Length field is only one byte long, the longest length for the Data field is 255 (the biggest number in only one byte). The fourth field contains the data itself, and its length is the one specified in the third byte. The fifth field must have the value 4 (0x04), and it marks the end of the datagram. This field can be used to check if a complete datagram was received.
Also sorry. auch wenn ich das Ganze übersetze reichen meine Kenntnisse nicht aus um zu wissen, auf welchen Befehl Bitvoicer von mir wartet um einen Befehl zu senden.
Please Help me
The BitVoicer Protocol consists of a set of formatting parameters that must be implemented in order to exchange information between BitVoicer and the microcontrollers. This protocol must be used in both communication directions: BitVoicer microcontroller and microcontroller BitVoicer.
The table below describes the format of the datagrams sent and received by BitVoicer:
Name Byte Position Value Description
Start of Transmission 1 1 Start of Transmission mark
Data Type 2 1 = Char
2 = Int
3 = Byte Indicates the data type
4 = String carried by the datagram
254 = Command
255 = Status
Data Length 3 X Length of the data field in bytes
Data 4 a n X Contains the data itself
n = 3 + Data Length
End of Transmission n + 1 4 End of Transmission mark
Although commands are wrapped according to these parameters, in essence, all exchanged data is a sequence of bytes whose length will vary depending on the data type and the amount of data exchanged.
The first byte in a datagram always must have the value 1 (0x01). This byte marks the beginning of a datagram. The second byte, whose value can be any of those in the Value column of the table above, specifies the data type contained within the Data field. The third byte indicates the length, in bytes, of the Data field. Because the Data Length field is only one byte long, the longest length for the Data field is 255 (the biggest number in only one byte). The fourth field contains the data itself, and its length is the one specified in the third byte. The fifth field must have the value 4 (0x04), and it marks the end of the datagram. This field can be used to check if a complete datagram was received.
Also sorry. auch wenn ich das Ganze übersetze reichen meine Kenntnisse nicht aus um zu wissen, auf welchen Befehl Bitvoicer von mir wartet um einen Befehl zu senden.
Please Help me
Re: Haussteuerung per Spracherkennung
OK:
datagram = kommando (vollständig)
kürzeste Version 4 Byte lang (0 byte Data, z.B. Status)
längste Ver. 4 + 255 = 259 Byte lang
1. (UBYTE) = 1 (immer, Startbyte)
2. (UBYTE) = Data Typ Definition (1, 2, 3, 4, 254, 255)
3. (UBYTE) = Data Länge (in bytes) = 0 bis 255 (0x00 - 0xFF)
--- DATA --- (wenn vorhanden, siehe oben)
letztes (UBYTE) = 4 (immer, Endbyte; position = 3 + Data-Länge + 1)
Das war's schon, recht einfach das Ganze ...
datagram = kommando (vollständig)
kürzeste Version 4 Byte lang (0 byte Data, z.B. Status)
längste Ver. 4 + 255 = 259 Byte lang
1. (UBYTE) = 1 (immer, Startbyte)
2. (UBYTE) = Data Typ Definition (1, 2, 3, 4, 254, 255)
3. (UBYTE) = Data Länge (in bytes) = 0 bis 255 (0x00 - 0xFF)
--- DATA --- (wenn vorhanden, siehe oben)
letztes (UBYTE) = 4 (immer, Endbyte; position = 3 + Data-Länge + 1)
Das war's schon, recht einfach das Ganze ...
++++++
Gruss/regards IKT
Gruss/regards IKT
Re: Haussteuerung per Spracherkennung
Hallo,
Ok, also wenn ich dich richtig verstehe muss ich dem bitvoicer den Befehl in bytes über den comport senden. So wie das empfangsbereit machen oder?
Ok, also wenn ich dich richtig verstehe muss ich dem bitvoicer den Befehl in bytes über den comport senden. So wie das empfangsbereit machen oder?
Re: Haussteuerung per Spracherkennung
Naja, wenn alles, was Du bisher geschrieben hast, korrekt ist, schon.
Aber: Du hast das Handbuch, Programm etc. (ich nicht!).
TIP: ersetze Microcontroller mit PL-E, wenn Du "Bit Voicer" Manual liest ...
Es ist eine Zwei-Wege Kommunikation, hin --> und zurück <--.
Daraus folgt: PL-E muss "Bit Voicer"-Protokoll:
A) "verstehen" (und danach, umsetzen können) -- und --
B) "senden" können (was wiederum, von "Bit Voicer" verstanden werden muss!)
Aber: Du hast das Handbuch, Programm etc. (ich nicht!).
TIP: ersetze Microcontroller mit PL-E, wenn Du "Bit Voicer" Manual liest ...
Es ist eine Zwei-Wege Kommunikation, hin --> und zurück <--.
Daraus folgt: PL-E muss "Bit Voicer"-Protokoll:
A) "verstehen" (und danach, umsetzen können) -- und --
B) "senden" können (was wiederum, von "Bit Voicer" verstanden werden muss!)
++++++
Gruss/regards IKT
Gruss/regards IKT
Re: Haussteuerung per Spracherkennung
Hallo,
da muss ich jetzt mal nachfragen:
"Das was Bitvoicer sendet sieht für mich aus wie Hyroglyphen."
Kommen die Hyrogyphen automatisch in hterm an - oder wie machst du das ?
Gruß MM
da muss ich jetzt mal nachfragen:
"Das was Bitvoicer sendet sieht für mich aus wie Hyroglyphen."
Kommen die Hyrogyphen automatisch in hterm an - oder wie machst du das ?
Gruß MM
Re: Haussteuerung per Spracherkennung
ich habe bitvoicer so eingestellt das er über com port einen String schickt
die Hyroglyphen sind nur Trennzeichen, hterm mitgelesen gesendet von bitvoicer xabc angekommen <1><4><4>xabc<4>
also bei PLE comport string empfang Trennzeichen <4> Rest $trim und schon sieht man auch im PLE xabc
Als virtuellen com port emulator nehme ich eterlogic.com
Für die Umsetzung als Haussteuerung sende ich Zahlen die ich dann ganz einfach mit Vergleichern auswerte.
z.B.: bitvoicer sende die Zahl 2001 für Küche Licht on an PLE >>>
in PLE geht die Zahl an alle Vergleicher und der mit der richtigen Nummer (a=b) schaltet dann den Ausgang.
gruß
Bernhard
die Hyroglyphen sind nur Trennzeichen, hterm mitgelesen gesendet von bitvoicer xabc angekommen <1><4><4>xabc<4>
also bei PLE comport string empfang Trennzeichen <4> Rest $trim und schon sieht man auch im PLE xabc
Als virtuellen com port emulator nehme ich eterlogic.com
Für die Umsetzung als Haussteuerung sende ich Zahlen die ich dann ganz einfach mit Vergleichern auswerte.
z.B.: bitvoicer sende die Zahl 2001 für Küche Licht on an PLE >>>
in PLE geht die Zahl an alle Vergleicher und der mit der richtigen Nummer (a=b) schaltet dann den Ausgang.
gruß
Bernhard
- Dateianhänge
-
- bitvoicer.prj
- (4.29 KiB) 206-mal heruntergeladen