Skip to main content

A Python package for interfacing with the HHS robot arm

Project description

---- Note -----

Website: https://lparker885.github.io/HHS-robot-arm/

Readme is in progress, as is the rest of the repository, and so might not be updated with the latest about where code is and what folders are. Being so warned, here is the somewhat current readme, designed to be quickly read by a student in a computer science class so that they can get right on with making the robot arm do whatever they want it to:

------- HOW TO INSTALL AND USE! --------------

Goto the tutorials page: https://lparker885.github.io/HHS-robot-arm/website/tutorials.html

Follow the instructions! :)

simple demo program:

from RobotArm import Robotarm arm = Robotarm.Robot()

print(arm) #should return an array looking like this: "[90,90,90,90,90,90,110]"

arm.go() #arm should start whirring arm.interpolate([110,110,90,90,90,110,90],20,3) #should move the arm and the hand slowly to a new position arm.stop() #arm should stop whirring

more less simple API explanation

Robot() creates a new robot object. Upon calling, it will connect to the robot arm via ethernet, so please don't try to set up the robot arm object before connecting the two pis and verifying that the network connected with ifconfig. (type ifconfig in the terminal, the eth0 interface should be connected). This object will return its joint data array when the str function is called. Sorry. But I'll probably not fix that.

interpolate(newData,steps,time) is a function that causes the robot to interpolate to a new position. Pass an array for newData, which should have 7 elements in this order: [base,shoulder,elbow,wristPitch,wristRoll,Hand1,Hand2]. Steps is simply the number of steps you wish to move through between the current position and newData. time is how long to spend interpolating. The robot can handle 5 steps per second, so for a maximally smooth interpolation, multiply time by 5 and add 5 for buffer if time is greater than 3.

go() enables PID loops and motor controller output.

stop() disables PID loops and motor controller output.

runArray(array, time) will run through a 2-D array of positions of arbitrary length passed to array. [position,position,position,position,etc.]. the positions should look like the newData passed to interpolate(). time is how long the robot should spend going between each position.

----------ignore this stuff its old -----

Robot arm!

Website: https://lparker885.github.io/HHS-robot-arm/

This code is for the robot arm at HHS. It has a few folders: maintenence, supersimpledemos, and networked-demos.

Maintenence should not worried about unless the robot needs retuning or a reflash of the firmware, but feel free to look if you are interested.

supersimpledemos has simple demos that are run on the pi inside the robot arm.

networked-demos has three folders:

  • a folder for basic networking stuff, that has the dependancy (network.py) and a basic python network chat app
  • a folder for recieve side stuff, which are the python programs that run on the pi inside the robot arm, and are basically just middlemen (sometimes with a bit of calculation for taking one kind of input and feeding it to the arduino like the arduino likes)
  • a folder for send side stuff, which are the python programs that run on the pi outside of the robot arm that is connected with an ethernet cable, and send data, commands, input, whatever you want to call it, for super easy interaction.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

HHS_Robotarm-0.0.1.11.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

HHS_Robotarm-0.0.1.11-py3-none-any.whl (16.8 kB view details)

Uploaded Python 3

File details

Details for the file HHS_Robotarm-0.0.1.11.tar.gz.

File metadata

  • Download URL: HHS_Robotarm-0.0.1.11.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.0

File hashes

Hashes for HHS_Robotarm-0.0.1.11.tar.gz
Algorithm Hash digest
SHA256 6c9691a02b9be8c2fc47f8b92532aa390b202c4f1fe28883d4ad307ad8d5c382
MD5 c4ff6ba838f6c39b9b564c8274044bcb
BLAKE2b-256 42bf522082f238ce00ba80689bdae0701f1020a989451b5cb1c63ba6df696a50

See more details on using hashes here.

File details

Details for the file HHS_Robotarm-0.0.1.11-py3-none-any.whl.

File metadata

File hashes

Hashes for HHS_Robotarm-0.0.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 73b8abe6e13bfa3cde4b681577c3442ebef8ead55646d4bb28331ec92e3154f7
MD5 280e7f1552fdb89b78872b8e334e76ee
BLAKE2b-256 b55014a409ba61ba8961ff7504bf2e5ece37bd907877cbc14dda192e19370163

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page