All Projects → adammck → hexapod

adammck / hexapod

Licence: other
Golang program for my junky hexapod

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to hexapod

penny
3 servos, 10 dollars hexapod
Stars: ✭ 26 (-55.93%)
Mutual labels:  robot, hexapod
joinhider bot
Telegram bot to delete user joined messages
Stars: ✭ 20 (-66.1%)
Mutual labels:  robot
RWHEC-Tabb-AhmadYousef
This code provides methods for robot-world, hand-eye(s) calibration, updated in June 2018..
Stars: ✭ 32 (-45.76%)
Mutual labels:  robot
mqr
茉莉QQ机器人(简称MQR),采用mirai的Android协议实现的QQ机器人服务,通过web控制机器人的启停和配置。
Stars: ✭ 71 (+20.34%)
Mutual labels:  robot
community-projects
Webots projects (PROTO files, controllers, simulation worlds, etc.) contributed by the community.
Stars: ✭ 20 (-66.1%)
Mutual labels:  robot
rgbd person tracking
R-GBD Person Tracking is a ROS framework for detecting and tracking people from a mobile robot.
Stars: ✭ 46 (-22.03%)
Mutual labels:  robot
lego-mindstorms-51515-jetson-nano
Combines the LEGO Mindstorms 51515 with the NVIDIA Jetson Nano
Stars: ✭ 31 (-47.46%)
Mutual labels:  robot
whatsapp-auto-messenger
Automatic message sender using WhatsApp Web at fixed interval.
Stars: ✭ 43 (-27.12%)
Mutual labels:  robot
smacha
SMACHA is a meta-scripting, templating, and code generation engine for rapid prototyping of ROS SMACH state machines.
Stars: ✭ 15 (-74.58%)
Mutual labels:  robot
RaspberryPi-4WD-Car
Yahboom 4WD smart robot with AI vision features for Raspberry Pi 4B
Stars: ✭ 31 (-47.46%)
Mutual labels:  robot
Swarmathon-Robot
Everything you need to build a Swarmathon Robot.
Stars: ✭ 13 (-77.97%)
Mutual labels:  robot
drivecommand
A communication library which connects a robot (EV3, NXT, etc.) and a device (Android, PC, etc.)
Stars: ✭ 13 (-77.97%)
Mutual labels:  robot
qqRobot.js
😊 QQ聊天机器人,使用JavaScript实现, 可以在安卓设备上运行。
Stars: ✭ 17 (-71.19%)
Mutual labels:  robot
ceres robot
ceres robot ros driver and tools
Stars: ✭ 43 (-27.12%)
Mutual labels:  robot
willsautoclick
Fastest Java autoclicker in the entire west
Stars: ✭ 12 (-79.66%)
Mutual labels:  robot
Stick-Hexapod
廢材四足機器人
Stars: ✭ 17 (-71.19%)
Mutual labels:  hexapod
webots ros
Webots ROS package
Stars: ✭ 73 (+23.73%)
Mutual labels:  robot
idyntree
Multibody Dynamics Library designed for Free Floating Robots
Stars: ✭ 109 (+84.75%)
Mutual labels:  robot
doubanrobot
A simple robot for Douban.com
Stars: ✭ 34 (-42.37%)
Mutual labels:  robot
Install-VScode-On-TX2
How to install VScode on Nvidia TX2
Stars: ✭ 24 (-59.32%)
Mutual labels:  robot

Adam's Hexapod

This is the Go program which powers my hexapod. It runs on a Raspberry Pi B+, and is controlled by a Sony Sixaxis (PS3) controller. The hexapod itself is 50cm in diameter, and about 2kg. The chassis was 3d-printed with a Printrbot Simple Metal, and bolted to 24 Dynamixel AX-12A servos. Each leg has 4DOF, which makes the gait quite flexible.

Here's it is, as of June 2017:

hexapod photo

And here's an old GIF of it in action:

hexapod standing up

More GIFs here.
And here's a video.

Hardware

STL files are available at adammck/hexapod-parts, but should not be considered usable for any purpose. It's more fun to design your own, anyway. Email me if you want the SketchUp files.

Usage

  1. Spend countless hours and dollars printing and assembling the hexapod. Be sure to blow up RPi and trap fingers between moving parts for authentic experience.

  2. Provision the RPi using adammck/headless-raspbian and adammck/hexapod-infra. It runs Raspbian Jessie with QtSixa, the control program (this repo), and a few systemd services to glue everything together.

  3. Flip the power switch to boot the hexapod. If you're running tethered with an external PSU, make sure that the power switch is off to isolate the LiPo before plugging it in.

  4. Plug the Sixaxis controller in with a USB cable. You only have to do this once, to pair it with the Bluetooth adaptor. Give it a few seconds (to run sixpair), then unplug it.

  5. Build and deploy:

     bin/pi-deploy main/main.go
    

    This requires Go to be installed with cross-compilation support for Linux/ARM. That's outside of the scope of this document, but it's easy.

  6. Press the PS button to pair. The controller should rumble and flash its lights. The control program will now start, and the hexapod will initialize and stand up.

  7. Use the left stick to translate, and L2/R2 to rotate. Various other buttons do other things.

  8. Press Select and Start to shut down the servos and the RPi. Note that this doesn't entirely kill the power, so don't forget to disconnect the LiPo to avoid damaging it.

    Shut down remotely by running:

     bin/pi-poweroff
    

    Shutdown will automatically occur (with no warning) when the battery drops below 9.6 volts. This is to protect the LiPo. My 2200mAh battery usually lasts about 15 minutes on a full charge.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].