From d99135876561fb3f3aa4a214be64613e8164382a Mon Sep 17 00:00:00 2001 From: dviid Date: Mon, 26 Nov 2012 15:22:39 +0100 Subject: [PATCH] Added Motion lib 101 --- hardware/datasheets/doc2505.pdf | Bin 0 -> 184089 bytes software/apps/Motion/Graph2.maxpat | 1460 ++++++++++++++++++++++++ software/apps/Motion/Graph2/Graph2.ino | 28 + software/lib/MMM/Motion.cpp | 134 +++ software/lib/MMM/Motion.h | 73 ++ software/lib/MMM/Motor.cpp | 64 +- software/lib/MMM/Motor.h | 9 +- 7 files changed, 1712 insertions(+), 56 deletions(-) create mode 100644 hardware/datasheets/doc2505.pdf create mode 100644 software/apps/Motion/Graph2.maxpat create mode 100644 software/apps/Motion/Graph2/Graph2.ino diff --git a/hardware/datasheets/doc2505.pdf b/hardware/datasheets/doc2505.pdf new file mode 100644 index 0000000000000000000000000000000000000000..6c26b0ef8318bc8084489a3a2e17b87b71b389dd GIT binary patch literal 184089 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 QiVQvFOA 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 nW5Op-AbC4rG)4m 0) { + x = analogRead(A0)/4; //just for this test + xtab[i] = x; //put it in array of x + i = i + 1; //index to last x (9 times ago) + if(i>9)i=0; //increment index + v = x - xtab[i]; //difference x vs old x + t = (t+1)%256; + // send sensor values: + Serial.write(x); // sends one byte [0-255] + Serial.write(v+128); + Serial.write(t); + } +} + diff --git a/software/lib/MMM/Motion.cpp b/software/lib/MMM/Motion.cpp index e69de29..a587da9 100644 --- a/software/lib/MMM/Motion.cpp +++ b/software/lib/MMM/Motion.cpp @@ -0,0 +1,134 @@ +/* + Motion.cpp - Motion library + Copyright (c) 2012 Copenhagen Institute of Interaction Design. + All right reserved. + + This library is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser Public License for more details. + + You should have received a copy of the GNU Lesser Public License + along with Foobar. If not, see . + + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + author: dviid + + contact: dviid@labs.ciid.dk + */ + +#include "Motion.h" + +#include +#include +#include + +#define PB0 PORTB0 + +bool motion_reg_init = false; + +Motion MotionA(MOTIONA); +Motion MotionB(MOTIONA); + +uint8_t lb; +uint8_t hb; +int x, xx; +float T = N * 0.004f; // 4ms +float v; + + +Motion::Motion(MOTION m){ + _m = m; + _i = false; +}; + +void Motion::init(INPUT sensor) +{ + if(!motion_reg_init){ + TCNT1 = 1000; //4 ms + TIMSK1 = (1 << TOIE1); + motion_reg_init = true; + } + _i = true; + _s = sensor; +} + +void Motion::updatePhysics() +{ + +} + +int Motion::getPosition() { + return _x; +} + +float Motion::getVelocity() { + return _v; +} + +float Motion::getAcceleration() { + return _a; +} + + +// clocked at 4ms period +ISR(TIMER1_OVF_vect) { + TCNT1 = 1000; + + + + if(MotionA._i) { + ADMUX = MotionA._s & 0x07; + ADCSRA |= (1 << ADSC); + while (ADCSRA & (1 << ADSC)); + lb = ADCL; + hb = ADCH; + x = (hb << 8) | lb; + MotionA._xv[MotionA._ix] = x; + MotionA._ix++; + MotionA._ix %= N; + + xx = x - MotionA._x; + if(abs(xx) < 2) { + v = 0.0f; + } else { + v = xx / T; + } + + MotionA._a = (v - MotionA._v) / T; + MotionA._v = v; + MotionA._x = x; + + } + + if(MotionB._i) { + ADMUX = MotionB._s & 0x07; + ADCSRA |= (1 << ADSC); + while (ADCSRA & (1 << ADSC)); + lb = ADCL; + hb = ADCH; + x = (hb << 8) | lb; + MotionB._xv[MotionB._ix] = x; + MotionB._ix++; + MotionB._ix %= N; + + + xx = x - MotionB._x; + if(abs(xx) < 2) { + v = 0; + } else { + v = xx / T; + } + + MotionB._a = (v - MotionB._v) / T; + MotionB._v = v; + MotionB._x = x; + + } + +} + diff --git a/software/lib/MMM/Motion.h b/software/lib/MMM/Motion.h index e69de29..8ffeb0d 100644 --- a/software/lib/MMM/Motion.h +++ b/software/lib/MMM/Motion.h @@ -0,0 +1,73 @@ +/* + Motion.h - Motion library + Copyright (c) 2012 Copenhagen Institute of Interaction Design. + All right reserved. + + This library is free software: you can redistribute it and/or modify + it under the terms of the GNU Lesser Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Lesser Public License for more details. + + You should have received a copy of the GNU Lesser Public License + along with Foobar. If not, see . + + +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + + author: dviid + + contact: dviid@labs.ciid.dk + */ + +#include + +#define N 10 + +enum MOTION { + MOTIONA = 0, + MOTIONB = 1 +}; + +enum INPUT { + INPUTA0 = 0x0000, + INPUTA1 = 0x0001, + INPUTA2 = 0x0010, + INPUTA3 = 0x0011, + INPUTA4 = 0x0100, + INPUTA5 = 0x0101, + INPUTA6 = 0x0110, + INPUTA7 = 0x0111 +}; + + +class Motion { + +public: + Motion(MOTION m); + + void init(INPUT sensor); + + int getPosition(); + float getVelocity(); + float getAcceleration(); + + void updatePhysics(); + + + // raw position vector + int _xv[N]; + int _ix; + int _x; + float _v; + float _a; + + MOTION _m; + INPUT _s; + bool _i; + +}; + +extern Motion MotionA; +extern Motion MotionB; \ No newline at end of file diff --git a/software/lib/MMM/Motor.cpp b/software/lib/MMM/Motor.cpp index 5a8be66..4399009 100644 --- a/software/lib/MMM/Motor.cpp +++ b/software/lib/MMM/Motor.cpp @@ -39,70 +39,36 @@ MMotor MotorB(MOTORB); // this is motor B MMotor::MMotor(MOTOR m) { _m = m; - init(); } void MMotor::init() { - if(!reg_init){ - //PWM, Phase and Frequency - //Correctthese modes are preferred for motor control applications p.130 - TCCR1A = 0; - TCCR1B |= (1 << WGM13); + if(!reg_init){ //direction pins are outputs DDRD |= (1 << PD7); - DDRB |= (1 << PB0); + DDRB |= (1 << PB0); + DDRB |= (1 << PB1) | (1 << PB2); + TCCR1A = (1 << COM1A1) | (1 << COM1B1); + + // clear the bits + TCCR1B &= ~((1 << CS10) | (1 << CS11) | (1 << CS12)); + TCCR1B = (1 << WGM13) | (1 << CS10); + + ICR1 = 512; reg_init = true; } - //set period for minimal noise - _period(64); - } -void MMotor::_set_period_bits() -{ - // clear prescaler reg - TCCR1B &= ~((1 << CS10) | (1 << CS11) | (1 << CS12)); - - if(_p < RESOLUTION) TCCR1B |= (1 << CS10); // pre-s 0 - else if((_p >>= 3) < RESOLUTION) TCCR1B |= (1 << CS11); // pre-s 8 - else if((_p >>= 3) < RESOLUTION) TCCR1B |= (1 << CS11) | (1 << CS10); // pre-s 64 - else if((_p >>= 2) < RESOLUTION) TCCR1B |= (1 << CS12); // pre-s 256 - else if((_p >>= 2) < RESOLUTION) TCCR1B |= (1 << CS12) | (1 << CS10); // pre-s 1024 - else _p = RESOLUTION - 1, TCCR1B |= (1 << CS12) | (1 << CS10); // pre-s 1024 - - ICR1 = _p; - -} - -void MMotor::_period(long ms) -{ - _p = (F_CPU * ms) / 2000000; - _set_period_bits(); -} void MMotor::torque(int value) -{ - - if(_m == MOTORA) { - DDRB |= (1 << PB1); - TCCR1A |= (1 << COM1A1); - } else if(_m == MOTORB) { - DDRB |= (1 << PB2); - TCCR1A |= (1 << COM1B1); - } - - unsigned long duty = _p * value; - duty >>= 10; - if(_m == MOTORA) OCR1A = duty; - else if(_m == MOTORB) OCR1B = duty; - _t = value; - - start(); +{ + if(_m == MOTORA) OCR1A = value; + else if(_m == MOTORB) OCR1B = value; + _t = value; } int MMotor::torque() @@ -126,7 +92,7 @@ void MMotor::stop() void MMotor::start() { - _set_period_bits(); + TCCR1B = (1 << WGM13) | (1 << CS10); } void MMotor::restart() diff --git a/software/lib/MMM/Motor.h b/software/lib/MMM/Motor.h index 465a21c..1d26962 100644 --- a/software/lib/MMM/Motor.h +++ b/software/lib/MMM/Motor.h @@ -21,8 +21,6 @@ + contact: dviid@labs.ciid.dk */ -#include - enum MOTOR{ MOTORA = 0, MOTORB = 1 @@ -35,7 +33,7 @@ enum DIRECTION { class MMotor { -public: +public: MMotor(MOTOR m); @@ -51,10 +49,7 @@ public: void start(); void restart(); -private: - - void _period(long ms); - void _set_period_bits(); +protected: MOTOR _m; DIRECTION _d;