Tinkertrons: Göra artificiella neuroner för robotar (8 / 9 steg)
Steg 8: Manöverdonet nervceller för robotar
De kan variera i storlek och form beroende på kretsarna krävs.
Den faktiska koden av ett ställdon neuron beror på robot som kontrolleras. Min första verkliga världen använder använder tinkertrons för att styra en air muskel robot controller. För detaljer om hur man gör registeransvarige, se här:
Här är koden som används i två aktivare nervceller av luft muskel robot controller som styr 11 air muskler. De är parallell bearbetning:
"18 x aktivare neuron en
låg 1
låg 2
låg 3
låga 7
låga 6
låga 5
låg 4
loop1:
"serin 0, t4800, b1
serin 0, t4800, (1), b1 ' ta emot 1 byte efter att ha fått 1
Pausa 30
"debug b1
om b1 = 1 då ÄRV1
om b1 = 2 sedan ÄRV2
om b1 = 3 då act3
om b1 = 4 då act4
om b1 = 5 sedan act5
om b1 = 6 sedan act6
om b1 = 7 sedan act7
om b1 = 16 sedan pressurev1v2
om b1 = 17 sedan vacv1v2
om b1 = 116 då tillbaka
om b1 = 117 sedan meddelandeprofil
om b1 = 52 sedan vänster
om b1 = 51 då rätt
om b1 = 18 så seq1 ' arm ner
om b1 = 19 sedan seq1rev "omvänd arm ner
gå till loop1
ÄRV1: ' v1
hög 1
Pausa 20
låg 1
gå till loop1
ÄRV2: ' v2
hög 2
Pausa 20
låg 2
gå till loop1
act3:
hög 3
Pausa 20
låg 3
gå till loop1
act4:
hög 7
Pausa 20
låga 7
gå till loop1
act5:
hög 6
Pausa 20
låga 6
gå till loop1
ACT6:
High 5
Pausa 20
låga 5
gå till loop1
ACT7:
hög 4
Pausa 20
låg 4
gå till loop1
pressurev1v2: ' ch +
hög 1 ' v1 arm ner
hög 2 ' v2
Pausa 800
låg 1
Pausa 1500
låg 2
hög 1
hög 2
Pausa 700
låg 1
låg 2
Pausa 60
hög 4 ' v7
Pausa 1440
låg 4
Pausa 20
"gå till loop1
Pausa 1600 ' Stäng gripare
hög 1 ' v1 upp arm
hög 2 ' v2
Pausa 2200
låg 1
låg 2
"arm kvar
High 5 "v6
Pausa 1200
låga 5
"arm ner
hög 1 ' v1
hög 2 ' v2
Pausa 800
låg 1
låg 2
gå till loop1
vacv1v2: "vac ch -
Pausa 3000
hög 1 ' v1 vac ventiler
hög 2 ' v2
hög 6 ' v5
High 5 "v6
hög 3
hög 7
Pausa 3500
låg 1
låg 2
låga 6
låga 5
låg 3
låga 7
Pausa 20
hög 4 ' v7
Pausa 3000
låg 4
höga 1 "släppa vac inline
hög 2
hög 4
hög 6
High 5
Pausa 2000
låg 1
låg 2
låg 4
låga 6
låga 5
hög 3
hög 7
Pausa 1000
låg 3
låga 7
gå till loop1
tillbaka:
hög 1
Pausa 2000
låg 1
gå till loop1
meddelandeprofil:
hög 3
hög 4
Pausa 1000
låg 3
låg 4
gå till loop1
vänster:
hög 1
hög 3
Pausa 20
låg 1
låg 3
gå till loop1
höger:
hög 2
hög 4
Pausa 20
låg 2
låg 4
gå till loop1
seq1:
"Stäng gripare
Pausa 1600
gå till loop1
seq1rev: "öppna gripare
Pausa 3000
gå till loop1
"18 x aktivare neuron två
låg 1
låg 2
låg 3
låga 7
låga 6
låga 5
låg 4
loop1:
"serin 0, t4800, b1
serin 0, t4800, (1), b1 ' ta emot 1 byte efter att ha fått 1
Pausa 30
"debug b1
om b1 = 1 då act13
om b1 = 2 sedan act13
om b1 = 3 då act13
om b1 = 4 då act13
om b1 = 5 sedan act13
om b1 = 6 sedan act13
om b1 = 7 sedan act13
om b1 = 8 då act8
om b1 = 9 sedan act9
om b1 = 10 då act10
om b1 = 11 sedan act11
om b1 = 12 sedan act12
om b1 = 13 sedan act13
om b1 = 14 sedan act14
om b1 = 16 sedan pressurev1v2
om b1 = 17 sedan vacv1v2
om b1 = 116 sedan g1000
om b1 = 117 sedan g1000
om b1 = 52 sedan act13
om b1 = 51 sedan act13
om b1 = 18 så seq1 ' arm ner
om b1 = 19 sedan seq1rev "omvänd arm ner
om b1 = 21 sedan powervac5
gå till loop1
act8:
hög 1
High 5
Pausa 20
låg 1
låga 5
gå till loop1
act9:
hög 2
High 5
Pausa 20
låg 2
låga 5
gå till loop1
act10:
hög 3
High 5
Pausa 20
låg 3
låga 5
gå till loop1
act11: "v11 intag
hög 7
gå till loop1
act12:
hög 6
High 5
Pausa 20
låga 6
låga 5
gå till loop1
act13:
High 5
Pausa 20
låga 5
gå till loop1
act14: "stoppa
hög 4
Pausa 5000
låg 4
gå till loop1
powervac5: "power vac 5 sek
låg 7 ' upp arm intag av
hög 6
Pausa 5000
hög 7
låga 6
gå till loop1
pressurev1v2: ' ch +
High 5 ' arm ner
Pausa 3160
höga 1 "v8
Pausa 1200
låg 1
Pausa 200
"gå till loop1
hög 2 ' Stäng gripare
Pausa 1000
låg 2
hög 3 "grepp
Pausa 600
låg 3
låga 5
låg 7 ' upp arm intag av
hög 6 "vac i
höga 1 "v8
Pausa 20
låg 1
Pausa 2200 "2800
hög 7
låga 6
låg 1
"arm kvar
låg 7 "intag av
hög 6 "vac i
höga 1 "v8
Pausa 1200
hög 7
låga 6
låg 1
"arm ner
High 5 ' Tryck
Pausa 800
låga 5
gå till loop1
vacv1v2: "ch -
låg 7 "intag av
hög 6 "vac i
hög 2 "öppna gripare
Pausa 1500
hög 3 "grepp
Pausa 1500
höga 1 "v8
Pausa 3520
Pausa 3000
låga 6
hög 7
låg 1
hög 4 "släppa vac inline
hög 2
hög 3
hög 1
Pausa 2000
låg 4
låg 2
låg 3
låg 1
Pausa 1000
gå till loop1
G1000:
låga 7
hög 6
Pausa 2000
hög 7
låga 6
gå till loop1
seq1:
High 5
hög 2 ' Stäng gripare
Pausa 1500
låg 2
hög 3 "grepp
Pausa 600
låg 3
låga 5
gå till loop1
seq1rev:
"öppna gripare
låg 7 "intag av
hög 6 "vac i
hög 2 "öppna gripare
Pausa 1500
hög 3 "grepp
Pausa 1500
låg 2
låg 3
hög 7
låga 6
gå till loop1