Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
project_lyta_control_logic_notes [2007-06-18 12:45] – external edit 127.0.0.1 | project_lyta_control_logic_notes [2017-01-28 05:33] (current) – [run loop] 193.180.119.2 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | |||
Line 4: | Line 5: | ||
==== assumptions ==== | ==== assumptions ==== | ||
- | treat muscles pairwise. | + | treat muscles pairwise. |
==== comments ==== | ==== comments ==== | ||
- | + | * General notes: See http:// | |
- | + | | |
- | + | | |
- | ¥ General notes: See http:// | + | |
- | ¥ There is a max patch from prototype 1 that implemented a simple muscle pair as described below. See http:// | + | |
- | ¥ One issue that was encountered with this scheme is that a light contact over time creates a depression. | + | |
- | ¥ A solution is to include a term which relates the applied force to the displacement (see general notes above) | + | |
==== run loop ==== | ==== run loop ==== | ||
Line 26: | Line 25: | ||
- | for each pair read FSR value if value is higher than threshold, wake up //otherwise, set muscle output to 0 (if it isn't already). | + | for each pair read FSR value if value is higher than threshold, wake up / otherwise, set muscle output to 0 (if it isn't already). |
==== calculating delta: ==== | ==== calculating delta: ==== | ||
Line 37: | Line 36: | ||
- | Mx==0 is maximum extension | + | Mx'' |
- | Mx==1 is maximum retraction | + | Mx'' |
- | Fx==0 is no force | + | Fx'' |
- | Fx==1 is maxumum force | + | Fx'' |
Line 57: | Line 56: | ||
- | d1 = (F1-F2) | + | d1 = (F1-F2) // increase M1 (back off) proportionally if F1 is greater than F2 // |
- | // increase M1 (back off) proportionally if F1 is greater than F2 | + | |
- | d2 = (0.5-M1) | + | d2 = (0.5-M1) // increase M1 proportionally if M1 is less than 0.5 // |
- | // increase M1 proportionally if M1 is less than 0.5 | + | |
- | d3 = ((1-M2)-M1) | + | d3 = ((1-M2)-M1) // increase M1 proportionally if M1 is less than 1-M2 // |
- | // increase M1 proportionally if M1 is less than 1-M2 | + | |
- | the three delta components are multipled | + | the three delta components are multiplied |
* M1 = M1 + (d1*c1 + d2*c2 + d3*c3) | * M1 = M1 + (d1*c1 + d2*c2 + d3*c3) |