Haussteuerung per Spracherkennung

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Haussteuerung per Spracherkennung

Beitrag von Joshi » Montag 30. Januar 2017, 10:40

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

wb77
Beiträge: 13
Registriert: Sonntag 9. Juni 2013, 01:04

Re: Haussteuerung per Spracherkennung

Beitrag von wb77 » Donnerstag 2. Februar 2017, 22:17

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

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Freitag 3. Februar 2017, 07:04

Ok, Vielen dank erstmal.

Hast du dich da angemeldet oder ist die Software kostenlos?

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Freitag 3. Februar 2017, 07:53

kannst du mir vielleicht eine kleine Anleitung dazu geben wie du das dann verwendest?

hab noch keine Ahnung von diesem Programm

mfg

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Montag 6. März 2017, 11:15

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?

Messtechniker
Beiträge: 58
Registriert: Mittwoch 15. April 2009, 10:58

Re: Haussteuerung per Spracherkennung

Beitrag von Messtechniker » Montag 6. März 2017, 12:44

Suche mal in der Hilfe zu Profilab nach "String".

tmm
Beiträge: 369
Registriert: Montag 23. Februar 2009, 06:38

Re: Haussteuerung per Spracherkennung

Beitrag von tmm » Montag 6. März 2017, 13:06

oder unter Beispiele\Hardware\\RS232\Nullmodem.prj

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Dienstag 7. März 2017, 07:01

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 :|

tmm
Beiträge: 369
Registriert: Montag 23. Februar 2009, 06:38

Re: Haussteuerung per Spracherkennung

Beitrag von tmm » Dienstag 7. März 2017, 07:35

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.

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Dienstag 7. März 2017, 08:31

OK,
Vielen Dank für die schnelle Antwort, ich versuche es mal,

mfg

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Donnerstag 9. März 2017, 20:01

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 :oops:

tmm
Beiträge: 369
Registriert: Montag 23. Februar 2009, 06:38

Re: Haussteuerung per Spracherkennung

Beitrag von tmm » Freitag 10. März 2017, 08:24

Hi,

zeig doch mal, wie die eingelesenen Daten in hterm aussehen.

Gruß MM

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Freitag 10. März 2017, 08:35

OK,

Muss ich von zuhause aus machen, bin leider auf der Arbeit. Ich melde mich heute Abend mal

mfg

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Sonntag 12. März 2017, 18:55

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:

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Sonntag 12. März 2017, 19:07

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

IKT
Beiträge: 561
Registriert: Mittwoch 4. November 2009, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von IKT » Montag 13. März 2017, 15:52

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 ...
++++++
Gruss/regards IKT

Joshi
Beiträge: 34
Registriert: Samstag 11. Juni 2016, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von Joshi » Dienstag 14. März 2017, 03:02

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?

IKT
Beiträge: 561
Registriert: Mittwoch 4. November 2009, 18:32

Re: Haussteuerung per Spracherkennung

Beitrag von IKT » Dienstag 14. März 2017, 16:19

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!)
++++++
Gruss/regards IKT

tmm
Beiträge: 369
Registriert: Montag 23. Februar 2009, 06:38

Re: Haussteuerung per Spracherkennung

Beitrag von tmm » Dienstag 14. März 2017, 17:31

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

wb77
Beiträge: 13
Registriert: Sonntag 9. Juni 2013, 01:04

Re: Haussteuerung per Spracherkennung

Beitrag von wb77 » Dienstag 14. März 2017, 20:30

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
Dateianhänge
bitvoicer.prj
(4.29 KiB) 104-mal heruntergeladen

Antworten

Zurück zu „Haussteuerungen“