|
'**************************************************************** ' Robosapien w/ RAMB (BasicX 24) by Chance Brown "knitsu" ' Sharp Infared Sensor connected to Pin 12 on the BX-24 ' IR PIN from Robosapien connected to Pin 13 on the BX-24
' more Robosapien BX-24 can be found at ' http://evosapien.com/robosapien-hack/knitsu/
' This Program basically allows your Robosapien to wander on his ' own "Autonomous" until the Batteries die, or he get's stuck in a ' tight spot that he cant get proper readings from.
' for adding something new to the program I recomend this: ' I recomend trying to add the actual Sensor's robosapien has built in him ' but you will have to find out the IR codes for Program LEFT/RIGHT sensors ' and apply those to the BITS below, where the other RS Controll Commands ' are located. This way if Robosapien does get stuck in a corner, or table/chair ' he will most likely hit his sensor and perfom the operation you programmed in ' here for that sensor to do, like WalkBack, Walk Back, Left Turn, Lef Turn, ROAR ' or something along those lines.
' thanks to all the people that have being helping me out, R.Oschler, Brian.P, T.Andley ' and also to the big man himself M.W. Tilden for creating this amazing Robot for me to ' learn the basics 101 of Robotics, and to continue to grow for the new robots to come!
'****************************************************************************** ** '****************************************************************************** **
Option Explicit Public Const LowBit as single = 0.000833 'Time it takes for the low bit Public Const StartBit as single = 0.006664 'Time it takes for the start bit Public Const HighBit as single = 0.003332 'Time it takes for the highbit Public Const ClockBit as single = 0.000833 'Clock bit time Dim value as Integer
Public Const Sapien As Byte = 12 'Robosapien is connected to pin 12 on the BX-24 'That is labled pin 8 on the motherboard
'IR Pin
Const CenterIRPin As Byte = 13 'The sharp Sensor is connected to pin 13 on the BX-24 'That is labled pin 9 on the motherboard Public Sub Main() Do Call SensorIn Loop End Sub
'***************************************************** ' Beginning of Program '*****************************************************
Sub SensorIN() Do Call Putpin(Sapien,1) Call ForwardStep ' RS takes forward step, before taking reading value=GetADC(13) ' gets value from sensor if value > 450 Then Call Toclose ' toclose is object more then 450 Call Sleep(0.6) End if If value <150 Then Call Tofar ' tofar is object is less then 150 Call Sleep(0.3) end if
'***************************************************** ' Object Inbetween 450/150 Just Right '*****************************************************
Call sleep (0.3) Debug.print "Just Right - " ; CStr(GETADC(13)) Call BackStep ' RS Back Step for Delay Time Call Delay(2.0) Call LTurnStep' RS Left Turn for Delay Time Call Delay(2.0) Call ForwardStep ' RS forward Step for Delay Time Call Delay (1.9) Call Putpin (25,0) 'red light on Call Putpin (26,0)'green light on CallDelay (0.5) Call Putpin (25,1) 'red light off Call Putpin (26,1) 'green light on Loop ' goes back to DO to start over End Sub
'***************************************************** ' Object To Far '*****************************************************
Sub Tofar() Do Debug.print "To Far - ";CStr(GETADC(13)) Call Putpin (25,0) 'red light on Call ForwardStep 'RS Forward Step until Delay Time Call Delay (1.9) Call Putpin(25,1) value= GetADC(13) ' gets value from sensor if value > 150 Then Call SensorIn Call Sleep(0.3) End If Call Sleep (0.3) Loop ' goes back to DO to start over End Sub
'***************************************************** ' Object To Close '*****************************************************
Sub Toclose() Do debug.print "To Close - "; CStr(GETADC(13)) Call Putpin (26,0) 'green light on Call BackStep ' RS takes Backstep for amount of Delay time Call Delay(2.8) Call LTurnStep ' RS Takes Backstep for amount of Delay Time Delay(2.8) Call Putpin (26,1) 'green light off value = GetADC(13) ' gets value from sensor if value <450 Then Call SensorIn End If Sleep(0.3) Loop ' goes back to DO to start over End Sub
'******************************** 'Infrared Commands to Robosapien '********************************
Sub Stopit()'Right Arm Out '10001110 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '*********************'********************* Sub TurnRight()'Turn Right '10000000 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0)
End Sub '********************* Sub RArmUp()'Right Arm Up '10000001 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1) Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1) Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RArmOut()'Right Arm Out '10000010 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub TltBodyR()'Tilt Body Right '10000011 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RArmDown()'Right Arm Down '10000100 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RArmIn()'Right Arm In '10000101 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub WalkForward()'Walk Forward '10000110 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub WalkBack()'Walk Backwards '10000110 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub TurnLeft()'Turn Left '10001000 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LArmUp()'Left Arm Up '10001001 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LArmOut()'Left Arm Out '10001010 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub TltBodyL()'Tilt Body Left '10001011 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LArmDown()'Left Arm Down '10001100 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LArmIn()'Left Arm In '10001101 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RTurnStep()'Right Turn Step '10100000 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RHandThump()'Right Hand Thump '10100000 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RHandThrow()'Right Hand Throw '10100000 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub SleepIt()'Sleep '10100011 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RHandPick()'Right Hand PickUp '10100100 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LeanBack()'Lean Backwards '10100101 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub ForwardStep()'Forward Step '10100110 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub BackStep()'Backward Step '10100111 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LTurnStep()'Left Turn Step '10101000 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LHandThump()'Left Hand Thump '10101001 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LHandThrow()'Left Hand Throw '10101010 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub Listen()'Listen '10101011 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LHandPick()'Left Hand PickUp '10101100 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LeanForward()'Lean Forward '10101101 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub ResetIt()'Reset '10101110 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* '********************* Sub RHandSk3()'Right Hand Strike 3 '11000000 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RHandSweep()'Right Hand Sweep '11000001 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub Burp()'Burp '11000010 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RHandSK2()'Right Hand Strike 2 '11000011 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub High5()'High Five '11000100 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub RHandSK1()'Right Hand Strike 1 '11000101 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub BullDozer()'BullDozer '11000110 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub Oops()'Fart '11000111 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LHandSk3()'Left Hand Strike 3 '11001000 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LHandSweep()'Left Hand Sweep '11001001 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub Whistle()'Whistle '11001010 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LHandSk2()'Left Hand Strike 2 '11001011 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub TalkBack()'TalkBack '11001100 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub LHandSk1()'Left Hand Strike 1 '11001101 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* Sub Roar()'Roar '11001110 Call Pulseout(Sapien,startbit,0) Call Pulseout(Sapien,HighBit,1)'7 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'6 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'5 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'4 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'3 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'2 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,HighBit,1)'1 bit Call Pulseout(Sapien,Clockbit,0) Call Pulseout(Sapien,LowBit,1)'0 bit Call Pulseout(Sapien,Clockbit,0) End Sub '********************* 'Robosapien is a trademark of WOW WEE
|