NOVITA' PER IL VOSTRO MR1000
Abbiamo creato attualmente due funzioni, in MR1000 per farvi interagire direttamente e per creare gesti,prendere oggetti,ecc
-Il primo è un comando vocale chiamato " cattura gesto " che ti consente di creare tutti i gesti che desideri.
-La seconda funzione è un servizio chiamato MRGestureCreator ( interrotto nella versione Manticore )
Come sulla prima funzione:
Come sulla seconda funzione:-Impostare i servi nelle posizioni che ti piacciono usando i cursori in MRL.
-Fare clic sulla scheda Python su MRL per aprire la sua finestra.
-Dire nel tuo microfono " cattura gesto ".
-Questo genererà un testo con tutte le posizioni dei tuoi servi nella scheda in basso di Python.
Dovrebbe sembrare come questo:123456
i01.moveHead(90.0,90.0,90.0,90.0,0.0,90.0)
i01.moveArm("left",0.2,90.2,30.2,12.2)i01.moveHand("left",0.0,0.0,0.0,0.0,90.2)
i01.moveArm("right",0.2,90.2,30.2,12.2)i01.moveHand("right",0.0,0.0,0.0,0.0,90.2)i01.moveTorso(90.2,90.2,90.0)
-In file, fare clic su "nuovo", questo creerà una nuova finestra di Python.-Copia / oltre le posizioni dei servi in esso.-Dagli un nome.-Nell'esempio seguente, ho chiamato il gesto "handflat"
Di seguito puoi vedere anche le varie posizioni di velocità e servi. "Cattura gesto" attualmente non genera la velocità, è necessario copiarli / incollarli se si desidera modificare la velocità nel gesto, in caso contrario, il gesto utilizzerà l'ultima velocità chiamata con il gesto precedente richiamato.
12345678910111213 def handflat():
i01.setHandVelocity("left", 43, 43, 43, 43, 43, 43) i01.setHandVelocity("right", 43, 43, 43, 43, 43, 43) i01.setArmVelocity("right", 31, 43, 23, 43) i01.setArmVelocity("left", 60, 23, 31, 31)
i01.setHeadVelocity(43, 43) i01.setTorsoVelocity(31, 16, -1) i01.moveHead(90.0,90.0,90.0,90.0,0.0,90.0) i01.moveArm("left",0.2,90.2,30.2,12.2) i01.moveHand("left",0.0,0.0,0.0,0.0,90.2) i01.moveArm("right",0.2,90.2,30.2,12.2) i01.moveHand("right",0.0,0.0,0.0,0.0,90.2) i01.moveTorso(90.2,90.2,90.0)
-Nel file, fare clic su "Salva con nome", selezionare la directory mrl / myrobotlabXXXX / MR1000 / gestures.-Salvalo come: handflat.py.
-Sei pronto per il gesto.-Ora creeremo nel chatbot la funzione per chiamare il gesto.-Apri in un editor di testo mrl / myrobotlabXXXX / MR1000 / chatbot / bots / it / aiml / _MRGestures.aiml-Scrivi in fondo al file aiml una nuova funzione come questa:1234 <category><pattern>HANDS FLAT</pattern> <template>I set my hands flat <oob><mrl><service>python</service><method>exec</method><param>handflat()</mrl></oob></template></category>
-Salva il file aiml.
-Hai fatto.
Cerca indentazione, Python è molto severo al riguardo.
Speriamo che questo vi aiuti
L'uso del Gesture Creator è un'altra soluzione molto utile. Grazie a Ma.Vo per aver creato quel servizio in MRrobotLab.
NOTA: questo servizio presenta problemi in Manticore ed è destinato a essere modificato per le versioni successive.
Tieni il cavo di alimentazione a portata di mano, anche se normalmente con buone impostazioni min min non dovrebbe sbagliare, ma non vogliamo essere responsabili per i servi rotti! ; )
Spiegazione:
Per connettersi a MR1000 è sufficiente eseguire lo script MR1000, quindi avviare MRGestureCreator (o avviarlo per primo, è lo stesso). Ora fai clic su "Connetti" - il pulsante cambierà in "Disconnetti", sarai connesso e potrai iniziare a fare gesti (puoi anche eseguirli senza MR-Connection, ma non puoi testarli direttamente).
Nell'elenco con la cornice, a volte potresti voler usare i tasti freccia (SU / GIÙ) per arrivare a una cornice che si trova sotto il bordo.
E quando copi il codice generato, usa "STRG" + "A" per contrassegnare l'intero testo (e "STRG" + "C" per copiarlo).
L'elenco dei gesti a volte utilizzerà una "X" davanti a una funzione, ciò significa che la funzione contiene operazioni che non sono supportate dalla parte di modifica / creazione, non è possibile caricarla, ma aggiornarla e rimuoverla.
Quando un gesto contiene movimenti che non implementano l'intera sezione (ad es. "I01.moveHead (10,10)" anziché "i01.moveHead (10,10,10,10,10)"), occorrerà "90 "Per i servi che non sono implementati. Lo stesso vale per la velocità, qui ci vorranno 1.0 per i servi non implementati.
Tabs:
main -> Attiva / disattiva le sezioni (vengono salvate, ma non possono essere modificate e visualizzate fino a quando non viene riacceso)
Mano destra / Braccio destro / Mano sinistra / Braccio sinistro / Testa / Torso -> Modifica le posizioni effettive dei servi
pulsanti:
Connetti / Disconnetti -> Connetti a / Disconnetti da MRMoov
Carica Scri -> Carica lo script corrente dal servizio Python (deve essere eseguito per primo)
Salva Scri -> Salva lo script / Esporta lo script (si aprirà una nuova finestra)
Carica gest -> Carica il gesto selezionato per la modifica
___ ___ Aggiungi gest -> Aggiungi il gesto caricato allo script
___ ___Update Gest -> Aggiorna il gesto selezionato con quello caricato
Rimuovi gest -> Rimuove il gesto selezionato dallo script
Test Gest -> Test del gesto creato (richiede InMoov - connessione)
_____Aggiungi -> Aggiungi una cornice con movimenti servo
Aggiungi velocità -> Aggiungi una cornice con impostazioni di velocità
_____ Aggiungi sospensione -> Aggiungi una cornice con sospensione
_____Aggiungi discorso -> Aggiungi un riquadro con discorso
Importa riposo minimo Max -> Importa le impostazioni min / rest- / max correnti di InMoov (richiede InMoov - connessione)
Rimuovi -> Rimuovi il frame selezionato (servo, sleep, voice o speed)
Carica -> Carica il frame selezionato (servo, sleep, parlato o velocità)
Aggiorna -> Aggiorna il frame selezionato (servo, sleep, parlato o velocità)
Copia -> Copia il frame selezionato (servo, sleep, voice o speed)
Su -> Sposta il fotogramma selezionato verso l'alto (servo, sleep, parlato o velocità)
Giù -> Sposta il fotogramma selezionato in basso (servo, sleep, parlato o velocità)
Test -> Test del frame selezionato (servo, sleep, voice o speed) (richiede MRMoov - connessione)