Fragmented files for the spyderbot social robot platform
Switch branches/tags
Nothing to show
Clone or download
Latest commit e1765df Aug 26, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
button added redbear tokens to Pi + code to button file header May 6, 2018
deprec working on node server - have woz and chatbot runnign seperate May 17, 2018
motorcode started demo file Aug 25, 2018
printer forgot tty Aug 9, 2018
public adding temp functions Jun 15, 2018
src working on node servers - cutting down travis' May 16, 2018
.gitignore working on move.py file Jun 2, 2018
Adafruit_Thermal.py adjusted timings Aug 26, 2018
README working on node server - have woz and chatbot runnign seperate May 17, 2018
alert.py adding in 4 more motions Jun 14, 2018
checkAround.py adding in 4 more motions Jun 14, 2018
config.txt fixing all Apr 16, 2018
demo.py adjusted timings Aug 26, 2018
easing.py fixing all Apr 16, 2018
forward.py adding in 4 more motions Jun 14, 2018
helloworld.py working on node servers - cutting down travis' May 16, 2018
home.py added limp() function Jul 24, 2018
index.js added __main__ loop to main.py Jun 22, 2018
init.py added going home motion to init() Jul 24, 2018
limp.py added limp() function Jul 24, 2018
lookUp.py fixed the lookUp() function Jul 24, 2018
m1temp.py adding temp functions Jun 14, 2018
motionGUI.py Add files via upload May 1, 2018
motions.py started demo file Aug 25, 2018
motiontest.py fixing all Apr 16, 2018
move.py added __main__ loop to main.py Jun 22, 2018
movearound.py started demo file Aug 25, 2018
nod.py adding in 4 more motions Jun 14, 2018
offer.py adding in 4 more motions Jun 14, 2018
offerAndReturn.py converting move.py to a supervisory file Jun 11, 2018
package-lock.json adding button code May 6, 2018
package.json adding button code May 6, 2018
printloadandpos.py added speed adjustment to puppet Aug 25, 2018
puppet.py puppet adjustments Aug 25, 2018
rest.py adding in 4 more motions Jun 14, 2018
runmotion.py started demo file Aug 25, 2018
sample.py syncing ilans work manually Apr 16, 2018
shake.py adding in 4 more motions Jun 14, 2018
sigh.py adding in 4 more motions Jun 14, 2018
slack_bot.py added overview document Apr 30, 2018
startup.mp3 fixing all Apr 16, 2018
subtleShake.py added a sublte shake Jul 17, 2018
tempsensing.py import os Aug 21, 2018
test.py added test.py Jun 22, 2018
xbox.py syncing ilans work manually Apr 16, 2018
xboxdemo.py single function files May 1, 2018

README

README for Spyderbot

ssh hostname: spyderbot

Dependencies:
slackclient
Pypot


# Interaction Engine #

To run this example:

1. clone the repo
2. run 'npm install' to install dependencies
3. run `node index.js`

# --- #

Please note motor ranges before building new positions, and try not to overextend (keeping motor between MID pos and MAX pos) for too long in any one behaviour (> 5 sec). Otherwise, motors will overload and shut down on you. The fix? Nicer motors. This does not apply to motor 2 (base).

Motor               MIN (Rest)    MID (Alert)   MAX (Up)
Base (m1)           -4            -4            -4
Neck (m2)           -77           -65           -26
Head (m3)           73            135           149

# --- #

Base Positions
                    P1 (Right)    P2 (Forward)  P3 (Left)
Base (m1)           -48           -4            40


# --- #

Motion Design

motions are a list of lists containing motor, easing function, start position, final position
ex:
motionrest= [
    [robot.m1 , x, robot.m1.present_position, -4] ,
    [robot.m2 , x, robot.m2.present_position, -77] ,
    [robot.m3 , x, robot.m3.present_position, 85]]

# --- #

CURRENT STATUS:
All definitions/positions are a bit all over the place (currently in rest.py/move_around.py), need to integrate everything into one clean file that can be imported. Definitions should be able to be called from motions.py. For the current moment, you need to code in some time after calling the motion to allow the motion to complete (time.sleep(x)). See rest.py for example.

A good range to start with speeds is from 10-40, then work up or down from there.

# --- #




Dependencies
Pypot: https://poppy-project.github.io/pypot/


Hardware:
http://www.trossenrobotics.com/dynamixel-ax-12-robot-actuator.aspx + also the ax-18 model (same shell)
http://www.trossenrobotics.com/usb2ax


** -- **

Motor ID's 2 (Base), 3 (Neck), 4 (Head)

** -- **


About Motion:

1. All the pre coded motions are stored in motions.py
2. If user want to run motions with terminal command, please run runmotion.py and type in the motion you want
3. The motions for the boss bot with GUI are in MotionGUI.py (The GUI is setted with Tkinter)


To Do:

Make global speed variable easily changeable
Integrate printer code
Setup node server (Pi)


Completed:

Easing function working with multiple motors
Integrate Easing into it's own file