GithubHelp home page GithubHelp logo

jiahan / atrias Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 0 B

Automatically exported from code.google.com/p/atrias

Makefile 3.07% C++ 73.40% C 13.56% Shell 1.55% MATLAB 0.30% OpenEdge ABL 0.08% CMake 5.41% Python 2.63%

atrias's People

Contributors

andrewpeekema avatar ayonga avatar jrvanwhy avatar mikhailjones avatar pclary avatar rynocerous avatar yoos avatar

Watchers

 avatar

atrias's Issues

Current and effective voltage going into the motors

I believe we just need to communicate well with the amplifiers to get this 
information.  But it should be logged at 1kHz, and be a reliable measurement. 
We'll have to make sure this is part of the Menial board redesign.

Original issue reported on code.google.com by [email protected] on 24 Jun 2011 at 5:31

Make it easy to get software system up and running

Currently, getting the software up and running across the nettop and desktop 
require quite a few steps, possibly in a certain order.

We need to make this a two-step process:

On nettop:
{{{
roslaunch atrias nettop.launch
}}}

On desktop:
{{{
roslaunch atrias desktop.launch
}}}

Original issue reported on code.google.com by [email protected] on 24 Oct 2011 at 9:51

Allow position control of hip angle

Currently the controller can either specify that the hip is a "pin joint" (i.e. 
in zero-force control) or locked at the midpoint of the screw.  It would 
probably be better if the controller could change the lock-point as needed.

Original issue reported on code.google.com by kkemper on 16 May 2011 at 4:09

Automatic calibration

Robot should go through an automatic self-calibration procedure at the press of 
exactly one button.

Use Medullas' EEPROM to save calibration config?

Original issue reported on code.google.com by [email protected] on 5 Nov 2011 at 5:30

  • Merged into: #44

Add info on robot definitions

Please include the definitions of the robot model, already supplied by J. 
Grizzle as a PDF document, to the wiki page.

Original issue reported on code.google.com by [email protected] on 27 Apr 2011 at 4:36

Add method for configuring the encoder limits

We need a way to update the encoder limits that the firmware uses for 
calculating the danger regions from the control computer.

Original issue reported on code.google.com by kkemper on 13 May 2011 at 6:35

Boom encoders missing some MSBs

The uController on the boom is missing some of the upper bits occasionally 
(like on the order of several seconds).  The current fix is to check to see if 
the value changed by more than some large amount (like 1000 counts) and not 
update the EtherCAT data when it does.

Original issue reported on code.google.com by kkemper on 3 May 2011 at 5:42

Current and Voltage from main battery

Now that the power will go through our Menial boards on the Elmos, we should be 
able to measure this.  Hopefully we can use the Hall sensors we already found 
for last summer's amps, or we can ask SWRI what sensors they use, and they may 
help us incorporate it into our machine.

Original issue reported on code.google.com by [email protected] on 24 Jun 2011 at 5:41

Document medulla LED states

Something nice to print out so people working with the robot can tell what the 
medullas are doing.

Original issue reported on code.google.com by kkemper on 21 Oct 2011 at 11:40

EtherCAT slaves do not respond correctly..?

To reproduce:

1. Turn on EtherCAT slaves, connect to master.
2. Insert kernel modules rt_shm and rtai_controller.
3. Monitor dmesg output.

The dmesg output looks something like:
"EtherCAT WARNING 0: 1 datagram TIMED OUT!"
"EtherCAT WARNING 0: 1 datagram UNMATCHED!"
"EtherCAT ERROR 0: Failed to receive address clearing datagram: Datagram error."

And:

"Slave does not support changing the PDO mapping."

This happens before the controller runs through the state machine to initialize 
the EtherCAT slaves.

Original issue reported on code.google.com by [email protected] on 19 Oct 2011 at 11:01

Characterize ATRIAS Spring Profile

Need to measure the spring rate using load cell and angle.  This may be an 
excellent task to delegate to a summer intern.  

For now, we could weigh the robot carefully, then change the knee angle to 
change the mechanical advantage of the legs, and change torque commands so the 
robot is in steady-state.  We then know the mass of the robot compared to the 
spring deflection - and this is a much better measurement than the torque 
commands to the motor. We may also be able to add and remove weights from the 
robot, and measure the deflection of the springs.  We _know_ that the springs 
are symmetrical, and that information is important.  

Original issue reported on code.google.com by [email protected] on 24 Jun 2011 at 5:38

data_publisher publishes at varying rates.

Data publishing needs to keep up with updates from rtai_controller.

Currently, data_publisher lags (on average) behind rtai_controller by 5 to 10 
seconds per minute.

The lag is not affected by the location of the ROS master node, so network 
connection speeds is probably not the bottleneck.

If publishing is disabled, the loop exceeds rtai_controller updates by 10 to 20 
seconds per minute.

Original issue reported on code.google.com by [email protected] on 10 Nov 2011 at 9:26

Handle spring hardstops by differently

Currently when any of the hardstops are triggered, the control signal is cut 
from the amp for the related motor.  The problem is when the springs reach 
their hardstop, they have stored up a heinous amount of energy. It would 
probably be better (safer) if rather then going totally limp and unleashing 
that energy, the motors should become "dampy".

Original issue reported on code.google.com by kkemper on 16 May 2011 at 4:18

Edit vendor ID and product code

The medulla boards still report that they a KPA part.  We need to get a script 
(make or find one) to edit the SII binary.

Original issue reported on code.google.com by kkemper on 1 Jun 2011 at 3:53

Use Orocos RTT

This will replace Devin's custom interface code between kernel and EtherCAT. 
This should also make launching software easier.

Original issue reported on code.google.com by [email protected] on 27 Oct 2011 at 7:00

  • Merged into: #22

Add makfile option to set medulla leg ID value

Right now to change the ID (to either leg A or B) the code must be directly 
modified.  This should just be a makefile option (i.e. "make legA").

Original issue reported on code.google.com by kkemper on 16 May 2011 at 4:27

Fix firmware makefiles

Currently the makefiles are unable to handle building objects and linking them. 
 This means that the external libraries (in the "lib" folder) have all the code 
in the header file.  While this works, it is gross and make the elderly cry.

Original issue reported on code.google.com by kkemper on 16 May 2011 at 4:30

Document state machine

make a nice google doc of the medulla system flow

Original issue reported on code.google.com by kkemper on 21 Oct 2011 at 11:39

Log motor rotor velocity

Because we are currently limited by the maximum velocity of the motor's rotor, 
it would be nice to have this logged along with the rest of the data. The rotor 
velocity can be calculated from the motor velocity that is already measured.

Original issue reported on code.google.com by [email protected] on 5 Jan 2012 at 11:08

Revise logging scheme.

Currently, the RT controller logs at 1 kHz while the GUI grabs a single clump 
of data at around 30 Hz (just enough to update the graphical display).

wireless_kern_interface runs two threads: msg_thread and datalogging_thread.

msg_thread... I'm not sure what this does. It might be the messenger between 
user space and kernel space.

datalogging_thread opens a logfile and logs an entry every loop.


The change: datalogging_thread should store 50 to 100 lines of log data at a 
time to send to the GUI in bursts (i.e., 20 to 10 Hz). Bandwidth could be saved 
by storing the values as floats instead of strings. This would be an addition 
to the local logging that is already performed on the nettop.

Original issue reported on code.google.com by [email protected] on 28 Oct 2011 at 3:15

Make it easier to install software components

ZotacBuild describes the software compilation process nicely, but the process 
really could be simpler.

Ultimately, we want to create a modified Xubuntu distribution with all 
necessary software components preinstalled. We'll want to consult OSU's OSL and 
LUG for this.

Fewer steps is better.

Original issue reported on code.google.com by [email protected] on 24 Oct 2011 at 10:54

Create general user guide

Someone should make a guide for working with the robot on a day-to-day basis.  
It should include things like how to get the system running (hopping?) from 
complete power-down and trouble-shooting ("are the lights blinking?", "did 
dmesg say xyz?").

Original issue reported on code.google.com by kkemper on 22 Oct 2011 at 12:45

Add to Wiki how to comment source with doxygen

I am adding comments to some of the code using javadoc style comments. This is 
parsed by doxygen to create HTML file. The project  coding standard needs to be 
updated to include how to make comments for doxygen

Original issue reported on code.google.com by [email protected] on 15 Nov 2011 at 1:52

Clicking on the "Log Data" button segfaults

It's likely that the cause is that no file location is specified and there is 
no error checking on the fopen or whatever.  The fix should be to check if a 
log file location has been specified before trying to open a null file.

Original issue reported on code.google.com by kkemper on 5 Jul 2011 at 7:09

Leg Medulla disables itself too eagerly

Using the Leg Position controller of the GUI, we are able to slowly change the 
leg angle to about 0.5 radians from neutral (pi/2 radians) and have one Medulla 
put itself in state 2 (STATUS_DANGER).

This happens in both directions.

It is always only one Medulla that dies, never both.

The log files do not show any outlying encoder values, so the encoders are 
probably okay.

Original issue reported on code.google.com by [email protected] on 22 Oct 2011 at 12:38

Update amp with actual motor specs

The specs that the amp are currently configured with are the generic ones from 
the website.  We now have the actual specs so the amps config can be more 
accurate.

Original issue reported on code.google.com by kkemper on 18 May 2011 at 6:19

Trivialize calibration.

We want this before ATRIAS 2.0 is put on the boom.

Currently, calibrating the robot involves manually moving the leg to various 
lengths and angles and recompiling the Medulla firmware with the new 
calibration values.

One idea with which to avoid having to touch the Medulla code at all is to make 
use of the EEPROM on the Medulla boards. The calibration values would be sent 
from another machine over EtherCAT, and the Medulla boards could save those 
values in the EEPROM.

It would be cool if the robot could make use of its limit switches to 
automatically undergo a calibration procedure at the press of a button.

Please leave any suggestions in the comments below.

Original issue reported on code.google.com by [email protected] on 5 Nov 2011 at 5:39

GUI log_file_chooser does not consistently update itself.

Checking and unchecking the Log Data checkbox in the GUI sometimes updates the 
file chooser and sometimes does not. The logfiles are automatically created 
properly by data_subscriber and reported back to the GUI node, but even though 
the GUI node sees the logfile name, it doesn't always update the file chooser 
button.

Original issue reported on code.google.com by [email protected] on 3 Nov 2011 at 9:39

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.