Project Rover is officially starting!
I've selected these first few components due to their unique features:
- Rugged 4WD with 130mm wheels, I've selected it because of the large wheels and base plate since I wasn't sure how much hardware I wanted on it but at some stage I want it outside and 4 separate motors are nice to have.
- WingXine APO-L1 - works up to 30v, 10A (with current limiter), PWM 1ms - 2ms (1.5ms zero) which should work with APM controller, I've selected it because I wanted the motors to self balance but each one is 12v, so if one motor stalls, the other will push harder, a theory which I did not put to the test yet, think of it as an electronic differential.
I've wanted to power the rover with standard LIPOs so I had to boost the power to 24v or use two batteries, in the end I've selected a boost converter instead, which makes the power source more flexible.
- DC-DC boost converter - 8.5-48v to 10-50v, which should get me a stable 24v out of whichever LIPO I have laying around.
For now I'm concentrating on a combination of hardware and software, I've made a USB joystick to PPM converter, which I've gotten fried due to human error, I've made a serial TFT LCD and PPM generator to be connected to a companion computer along with a mavlink connection and I'm reviewing a few npm packages for later use, you'd be surprised how many potential problems can be found before even running a single test just by converting the project to typescript and imposing a few basic types and interfaces not to mention the learning curve to the package internals and functions is reduced to minimum.
- dns-packet and multicast-dns - originally by Mathias Buus
- ip/node-ip - originally by Fedor Indutny
and today I've checked out mavlink package, originally by Owen McAree, I've just seen the data flowing from APM, great!
message AHRS { omegaIx: 0.0003541054902598262, omegaIy: 0.0006027567433193326, omegaIz: -3.3141745348075347e-7, accel_weight: 0, renorm_val: 0, error_rp: 0.0018874505767598748, error_yaw: 1 } message HWSTATUS { Vcc: 4349, I2Cerr: 1 } message SYSTEM_TIME { time_unix_usec: 0, time_boot_ms: 16363 } message ATTITUDE { time_boot_ms: 16402, roll: 0.018413120880723, pitch: 0.01433389913290739, yaw: -0.0002040785038843751, rollspeed: 0.00037805165629833937, pitchspeed: 0.0006373348878696561, yawspeed: 0.00040407307096756995 } message VFR_HUD { airspeed: 0, groundspeed: 0, alt: 0.07000000029802322, climb: 0, heading: 0, throttle: 100 } message RAW_IMU { time_usec: 16643270, xacc: 20, yacc: -10, zacc: -986, xgyro: 0, ygyro: 0, zgyro: 0, xmag: 0, ymag: 0, zmag: 0 } message SYS_STATUS { onboard_control_sensors_present: 2153475, onboard_control_sensors_enabled: 2129923, onboard_control_sensors_health: 2153475, load: 371, voltage_battery: 0, current_battery: -1, drop_rate_comm: 0, errors_comm: 0, errors_count1: 0, errors_count2: 0, errors_count3: 0, errors_count4: 0, battery_remaining: -1 } message MEMINFO { brkval: 6629, freemem: 1519 } message MISSION_CURRENT { seq: 0 } message ATTITUDE { time_boot_ms: 16644, roll: 0.01850038766860962, pitch: 0.014476700685918331, yaw: -0.00014243528130464256, rollspeed: -0.00006719821249134839, pitchspeed: 0.0005361465737223625, yawspeed: 0.00013777358981315047 }
0 comments:
Post a Comment