- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 5 von 5

Thema: Sprachsteuerung für Roby !!?

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    04.12.2003
    Ort
    Aachen
    Alter
    46
    Beiträge
    19

    Sprachsteuerung für Roby !!?

    Hallo !
    Ich habe an meinem Roby ein Spracherkennungsmodul (VD 364 ) angebaut,
    das Programm habe ich von dem Projekt Lallus (WDR Computerclub).
    Verbunden habe ich das Spracherkennungsmodul mit Port 9 – 12 über 4 Pull Up
    Widerständen mit dem Roby.Mit dem Programm und der Seriellen Schnittstelle
    kann ich im Hyper Terminal Worte b.z.w Befehle speichern und erkennen lassen.
    Wen das Spracherkennungsmodul Worte die ich vorher gespeichert habe (bis zu 60 Worte)
    Erkennt dann gibt er über das Terminal z.b die Kennung 255 3 0 1 4 aus.
    Die Kennung setz sich wie folgt zusammen - Synchronbyte 255, Längenbyte 3, 0 = kein Fehler,1 ist die Zeigerposition, Checksum 4.
    So jetzt meine Frage an euch wie kann ich die Antwort umsetzten so das ich damit dem Roby steuern kann b.z.w das er auf die Befehle eine Funktion durchführt????

    Vielen Dank schon mal im voraus!!!!!

    Hier das Programm
    define reset port[9]
    define shs port[10]
    define data port[12]
    define mhs port[11]
    define wert byte
    define anzahl byte
    define check byte
    define i byte
    define j byte
    define offset byte
    define taste byte
    define segment byte
    define wort byte
    define manda byte
    define erkannt bit[192]
    define speek bit[191]
    define sagen bit[190]
    #init
    deact shs : reset =off : reset =on
    pause 30
    #anzeige
    print
    print "Namen erkennen <A> [B] Pointer lesen"
    print "Namen trainieren <C> <D> Kommunikation ??"
    print "Get Entry status <E> <F> Version abfragen"
    print "Wort sagen <G> <H> Directory lesen"
    print "Startbeep ein [I] <J> Startbeep aus"
    print "Increment pointer<K> <L> Decrement pointer"
    print "Clear current p. <M> <N> Swap curr. pointer"
    print "Restore curr. p. <O>

    Delete curr. entry"
    print "Delete all words <Q> <R> Power down !RESET!"
    print "NEAR <S> <T> FAR"
    print "QUIET <U> <V> AUTOMOTIVE"
    print "Speech (PWM) aus <W> <X> Speech (PWM) ein"
    print "Automatik ein <Y> <Z> Automatik aus"
    print "Menüanzeige <Leertaste>"
    print
    #main
    taste=0
    if not rxd then goto main
    get taste
    if taste=32 then goto anzeige
    if taste <65 then goto main
    if taste >96 then taste = taste-32
    offset = (taste-65)*5
    if offset = 120 then goto automatik
    if offset=30 then sagen =on
    if sagen=on then goto sprechen else goto ausführen
    #sprechen
    print "Mandatory prompt list <0> "
    print "Optional prompt list <1> "
    input manda
    if manda>1 then goto sprechen
    if manda = 0 then print "Das gewünschte Wort (1 -20 eingeben."
    if manda = 1 then print "Das gewünschte Wort (1 -240) eingeben."
    input wort
    #ausführen
    print "Kommando"
    looktab command,offset,anzahl
    wert=255 : gosub schreiben
    wert = anzahl + 1 : gosub schreiben
    check = wert
    for j = 1 to anzahl
    looktab command,j+offset,wert
    if sagen=on and j=2 then wert=wort
    if sagen=on and j=3 then wert=manda
    check = check + wert
    gosub schreiben
    next j
    sagen=off
    manda=0
    wert=check : gosub schreiben
    print
    #antwort
    print "Antwort"
    gosub lesen : gosub lesen
    anzahl=wert
    for j = 1 to anzahl
    gosub lesen
    next j
    print
    goto main
    #lesen
    wert=0
    deact data
    for i = 7 to 0 step -1
    wait not shs
    if data then wert = wert + (1 shl i)
    mhs = off : wait shs : mhs = on
    next i
    print wert;" ";
    return
    #schreiben
    for i = 7 to 0 step - 1
    if wert and 1 shl i then data =on else data = off
    wait shs
    mhs = off
    wait not shs
    mhs = on
    wait shs
    next i
    print wert; " ";
    return
    #automatik
    offset = 0
    if rxd then get taste
    if taste=90 or taste=122 then goto anzeige
    if taste >96 then taste=taste-32
    if taste =91 then goto anzeige
    print "Kommando"
    looktab command,offset,anzahl
    wert=255 : gosub schreiben
    wert = anzahl + 1 : gosub schreiben
    check = wert
    for j = 1 to anzahl
    looktab command,j+offset,wert
    check = check + wert
    gosub schreiben
    next j
    wert=check : gosub schreiben
    print
    print "Antwort"
    gosub lesen : gosub lesen
    anzahl=wert
    for j = 1 to anzahl
    gosub lesen
    if j=1 and wert=0 then erkannt=on
    next j
    print
    if erkannt=on then goto erkannt
    goto automatik
    #erkannt
    erkannt=off
    print "Erkennung"
    wert=255 : gosub schreiben
    wert=2 : gosub schreiben
    wert=38 : gosub schreiben
    wert=40 : gosub schreiben
    print
    print "Antwort"
    gosub lesen : gosub lesen
    anzahl=wert
    for j = 1 to anzahl
    gosub lesen
    if j=2 then segment=wert+1
    next j
    print
    print "Erkennung"
    wert=255 : gosub schreiben
    wert=5 : gosub schreiben
    wert=48 : gosub schreiben
    wert=90+segment:gosub schreiben
    wert=1 : gosub schreiben
    wert=1 : gosub schreiben
    wert=5+48+90+segment+1+1: gosub schreiben
    print
    print "Antwort"
    gosub lesen : gosub lesen
    anzahl=wert
    for j = 1 to anzahl
    gosub lesen
    next j
    print
    goto automatik
    table command
    4 16 121 0 1 ' recognize word
    1 38 0 0 0 ' return pointer
    4 2 121 0 1 ' train a name
    1 0 0 0 0 ' no operation
    1 42 0 0 0 ' get entry status
    1 1 0 0 0 ' get version
    3 48 7 0 0 ' say a prompt
    1 43 0 0 0 ' query directory
    3 65 8 1 0 ' beep ein
    3 65 8 0 0 ' beep aus
    1 33 0 0 0 ' increment pointer
    1 34 0 0 0 ' decrement pointer
    1 32 0 0 0 ' clear current pointer
    1 37 0 0 0 ' swap current pointer
    1 36 0 0 0 ' restore current pointer
    1 39 0 0 0 ' delete current entry
    2 40 85 0 0 ' delete all stored words
    1 64 0 0 0 ' power down
    3 65 0 254 0 ' environment near
    3 65 0 255 0 ' environment far
    3 65 0 243 0 ' environment quiet
    3 65 0 12 0 ' environment automotive
    3 65 7 1 0 ' speech pwm aus
    3 65 7 2 0 ' speech pwm ein
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken roby.jpg  

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests