Difference between revisions of "Raspberry PI Spiderbot"

From BITPlan Wiki
Jump to navigation Jump to search
Line 8: Line 8:
  
 
= Parts =
 
= Parts =
* {{Link|target=PCA9685}}
+
{| class="wikitable"
* [https://www.thingiverse.com/thing:2204279 parts from regishu's design]
+
|-
* [https://www.amazon.de/gp/product/B07LFDDXZ2 set of small screws]
+
! # !! picture !! part !! example sources !! documents !! ~ price
* [https://www.amazon.de/gp/product/B07FQMTLD4 12 x MG90s] https://images-na.ssl-images-amazon.com/images/I/71a1K3RQuqL._SX679_.jpg
+
|-
 +
| 1 || [[File:713LX1Z383L. SL1500 .jpg|200px]] || Raspberry PI 3 B+ || [https://www.amazon.de/Raspberry-1373331-Pi-Modell-Mainboard/dp/B07BDR5PDW Raspberry PI 3 B+] || [https://www.raspberrypi.org/documentation/hardware/computemodule/datasheets/rpi_DATA_CM3plus_1p0.pdf en] || 35 €
 +
|-
 +
| 2 || [[File:81UBu4aoQHL. SL1500 .jpg|200px]] || microSD Card || [https://www.amazon.de/dp/B073S9SFK2/ SanDisk 16 GB] || || 7 €
 +
|-
 +
| 3 || [[File:61Z5yEYfnAL. SL1426 .jpg|200px]] || Raspberry PI Camera || [https://www.amazon.de/Raspberry-Pi-V2-1-1080P-Kamera-Modul/dp/B01ER2SKFS 1080 p Camera Module] || || 23 €
 +
|-
 +
| 4 || [[File:41smcErJNjL.jpg|200px]] || DC/DC Converter 12 V-> 5V || [https://www.amazon.de/riorand-Display-Netzteil-Converter-Modul/dp/B00G890MIC 12 V->5 V Converter Module] || || 7 €
 +
|-
 +
| 5 || [[File:31pzC7A3D3L.jpg|200px]] || Micro USB Connector || [https://www.amazon.de/Delock-Stecker-Offene-Kabelenden-schwarz/dp/B01A9GLG6Q Delock USB 2.0 Micro USB] || || 6 €
 +
|-
 +
| 6 ||  || 3D Printed Parts: Coxa, Tibia, Femur, Hinge || [https://www.thingiverse.com/thing:2204279 parts from regishu's design] || ||
 +
|-
 +
| 7 ||  || Adafruit PCA9685 16 channel PWM controller || {{Link|target=PCA9685}} || ||
 +
|-
 +
| 8 ||  || set of small screws || [https://www.amazon.de/gp/product/B07LFDDXZ2 set of small screws] || ||
 +
|-
 +
| 9 || https://images-na.ssl-images-amazon.com/images/I/71a1K3RQuqL._SX679_.jpg || 12 x MG90S || [https://www.amazon.de/gp/product/B07FQMTLD4 12 x MG90s] || ||
 +
|-
 +
| || || || ||Total ||  € 
 +
|-
 +
| a
 +
| [[File:71AYEqpWHcL. SL1500 .jpg|200px]]
 +
| Breadbord Kit
 +
| [https://www.amazon.de/gp/product/B01N4VCYUK MB102 Breadbord Kit]
 +
|
 +
| 7 €
 +
|-
 +
| b
 +
| [[File:714Ep9LpwoL. SL1200 .jpg | 200 px]]
 +
| Ulrasound Sensor
 +
| [https://www.amazon.de/gp/product/B01M9CMJ9O 5 x HC-SR04 + Cables]
 +
|
 +
| 10 €
 +
|}
 
[[File:SpiderBotParts-IMG_0028.jpeg|400px]]
 
[[File:SpiderBotParts-IMG_0028.jpeg|400px]]
  

Revision as of 09:51, 25 July 2019

Inspired by the Arduino Project below we'd like to create a Raspberry PI version as in https://github.com/yasaspeiris/aragog

Video

Links

Parts

# picture part example sources documents ~ price
1 713LX1Z383L. SL1500 .jpg Raspberry PI 3 B+ Raspberry PI 3 B+ en 35 €
2 81UBu4aoQHL. SL1500 .jpg microSD Card SanDisk 16 GB 7 €
3 61Z5yEYfnAL. SL1426 .jpg Raspberry PI Camera 1080 p Camera Module 23 €
4 41smcErJNjL.jpg DC/DC Converter 12 V-> 5V 12 V->5 V Converter Module 7 €
5 31pzC7A3D3L.jpg Micro USB Connector Delock USB 2.0 Micro USB 6 €
6 3D Printed Parts: Coxa, Tibia, Femur, Hinge parts from regishu's design
7 Adafruit PCA9685 16 channel PWM controller PCA9685
8 set of small screws set of small screws
9 71a1K3RQuqL._SX679_.jpg 12 x MG90S 12 x MG90s
Total
a 71AYEqpWHcL. SL1500 .jpg Breadbord Kit MB102 Breadbord Kit 7 €
b 714Ep9LpwoL. SL1200 .jpg Ulrasound Sensor 5 x HC-SR04 + Cables 10 €

SpiderBotParts-IMG 0028.jpeg

Assembly

  • Legs and hinges are connected with 1.4x5mm screws
  • Legs and servos are connected with 1.7x6mm screws

Leg IMG 0029.JPG LegConnection-IMG 0030.JPG

We use the raspberry base from https://github.com/yasaspeiris/aragog/blob/master/3d%20printed%20parts/base.STL

Plate-IMG 0033.JPG

Leg Test

sudo python3 testadafruit.py 0 1 2 3  0

Legs0-IMG 0030.JPG

sudo python3 testadafruit.py 0 1 2 3  90

Legs90-IMG 0031.JPG

sudo python3 testadafruit.py 0 1 2 3  180

Legs180-IMG 0032.JPG

testadafruit.py

# Test Adafruit 
# WF 2019-07-09
import sys
import time
from adafruit_servokit import ServoKit
kit = ServoKit(channels=16)

# 
# set the given angle for the given servos
#
def setAngle(servos,angle):
  print (angle)
  for id in servos:
    kit.servo[id].angle=angle
  time.sleep(0.3)

# Test Servo Software
servos=[]
args=len(sys.argv)
fromangle=0
toangle=180
step=1
if args>1:
  for port in range(1,args-1,1):
    servos.append(int(sys.argv[port]))
  anglestr=sys.argv[args-1]
  if "-" in anglestr:
    parts=anglestr.split("-") 
    fromangle=int(parts[0])
    toangle=int(parts[1])
  else:
    fromangle=int(anglestr)
    toangle=fromangle
else:
  servos.append(0)
  servos.append(1)
  servos.append(2)

if fromangle!=toangle:
  try:
    while True:
      for setangle in range(fromangle,toangle+step,step):
        setAngle(servos,setangle)
  except KeyboardInterrupt:
    print("Keyboard interrupt")
else:
  setAngle(servos,fromangle)

What Links Here