scieee AI-readable full text Open interactive document viewer

Design of a bench to allocate accelerometers and gyroscopes on a sailplane

Castro Ruiz, Oscar

Full text

ETSEIAT Grau en Enginyeria en Tecnologies Industrials Design of a bench to allocate accelerometers and gyroscopes on a sailplane Annex A: Material Diagrams Author: Oscar Castro Ruiz Director: Ricardo Villar Co-director: Rafael Weyler [12-06-2015] Annex A This is the annex in charge of providing all the information needed of the materials used or that would be use in the fabrication of the benches. All the information below is an extract of the database available in UPC ‘CES EduPack’. Diagrams Density – Hardness Density – Price Yield Strength – Elongation Embodied energy – CO2 footprint Basic information of the materials Acrylonitrile butadiene styrene (ABS) Polystyrene (PS) Wood Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 6 ______________________________________________________ Weight Limits Empty Weight approx. 200 kg 440 lbs Maximum Gross Weight 341 kg 752 lbs Maximum Weight of Nonlifting Parts 212 kg 467 lbs Inflight C.G. Limits Horizontal reference line: Under side of fuselage boom Datum Line:Leading edge of wing at root rib Maximum Forward Inflight C.G. 210 mm [8.268 in] aft of Datum Maximum Rearward Inflight C.G. 350 mm [13.78 in] aft of Datum Empty Weight C.G. Limits For empty weight C.G. Limits see page 4. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 7 ______________________________________________________ Empty Weight C.G. range Weight from to aft of Datum kg mm mm kg mm mm 190 665 - 708 221 592 - 658 191 652 - 707 222 591 - 657 192 650 - 705 223 589 - 655 193 648 - 703 224 587 - 654 194 645 - 701 225 585 - 653 195 643 - 699 226 584 - 651 196 641 - 697 227 582 - 650 197 639 - 696 228 581 - 649 198 637 - 694 229 579 - 647 199 635 - 692 230 577 - 646 200 632 - 691 231 576 - 645 201 630 - 689 232 573 - 644 202 628 - 687 233 571 - 642 203 626 - 685 234 568 - 641 204 624 - 684 235 566 - 640 205 622 - 682 236 564 - 639 206 620 - 681 237 561 - 637 207 618 - 679 238 559 - 636 208 616 - 677 239 556 - 635 209 614 - 676 240 554 - 634 210 612 - 674 241 552 - 633 211 610 - 673 242 550 - 631 212 608 - 671 243 547 - 630 213 607 - 670 244 545 - 629 214 605 - 668 245 543 - 628 215 603 - 667 246 541 - 627 216 601 - 665 247 538 - 626 217 599 - 664 248 536 - 625 218 598 - 662 249 534 - 623 219 596 - 661 250 532 - 622 220 594 - 660 Datum:Leading edge at root rib Horizontal Reference line: Under side of fuselage boom Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 8 ______________________________________________________ Empty Weight C.G. range Weight from to aft of Datum lbs in in lbs in in 419 25.787 -27.874 487 22.598 -25.906 421 25.669 -27.835 489 22.520 -25.866 423 25.591 -27.756 492 22.402 -25.787 425 25.512 -27.677 494 22.323 -25.748 428 25.394 -27.598 496 22.205 -25.709 430 25.315 -27.520 498 22.126 -25.630 432 25.236 -27.441 500 22.008 -25.591 434 25.157 -27.402 503 21.929 -25.551 437 25.079 -27.323 505 21.811 -25.472 439 25.000 -27.244 507 21.732 -25.433 441 24.882 -27.205 509 21.614 -25.394 443 24.803 -27.126 511 21.535 -25.354 445 24.724 -27.047 514 21.457 -25.276 448 24.606 -26.969 516 21.339 -25.236 450 24.488 -26.929 518 21.260 -25.197 452 24.370 -26.850 520 21.181 -25.157 454 24.252 -26.811 522 21.063 -25.079 456 24.134 -26.732 525 20.984 -25.039 459 24.016 -26.654 527 20.906 -25.000 461 23.898 -26.614 529 20.827 -24.961 463 23.780 -26.535 531 20.748 -24.921 465 23.661 -26.496 534 20.630 -24.843 467 23.583 -26.417 536 20.551 -24.803 470 23.465 -26.378 538 20.472 -24.764 472 23.346 -26.299 540 20.394 -24.724 474 23.228 -26.260 542 20.315 -24.685 476 23.150 -26.181 545 20.236 -24.646 478 23.031 -26.142 547 20.157 -24.606 481 22.913 -26.063 549 20.079 -24.528 483 22.795 -26.024 551 20.000 24.488 485 22.717 -25.984 Datum:Leading edge at root rib Horizontal Reference line:Under side of fuselage boom Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 9 ______________________________________________________ Weak Link in tow cable For winch launch and aero tow : 500 kg 1102 lbs Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 10 _______________________________________________________ Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 11 _______________________________________________________ Normal Procedures Adjustment of Rudder Pedals: Forward Adjustment:Disengage latch, push both pedals forward with feet and re-engage latch. Rearward Adjustment:Disengage latch, pull pedals rearward to desired position and re-engage latch. Canopy Emergency Jettison: Pull both canopy locks near forward canopy frame backward and turn inward. Lock pins in open position by turning outward again. Parachute Static Line: Attach to red marked tube potion at left rear of pilot seat. When using a parachute with separate harness, make sure not to route connector around landing gear drive rod, as this makes emergency exit impossible. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 12 _______________________________________________________ Winch Launch Maximum winch launch speed = 120 km/h, 75 mph, 65 Kt. Attention: Keep control stick during take off roll in normal position, not fully forward. Apply forward pressure when entering transition, because of pitch-up tendency especially with rear C.G. positions. Aero tow only at nose hook (when installed) Maximum aero tow speed = 160 km/h, 99 mph, 86 Kt. Minimum aero tow speed not below 90 km/h, 56 mph, 49 Kt., with full water ballast tanks not below 100 km/h, 62 mph, 54 Kt. Tow cable length = 30 to 60 m, 100 to 200 ft Initial aileron effectiveness may be considerably increased by slight extension of air brakes. They should be retracted and locked before leaving ground. Edition 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 13 _______________________________________________________ Landing gear Landing gear can be operated at all permissible speeds. Handle forward and locked: Gear extended Handle rearward and locked: Gear retracted Caution: When pushing backwards and applying wheel brake, landing gear may unlock and fold. This results in a bended drive rod. Edition 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 14 _______________________________________________________ Free Flight Stall speed around 65 to 60 km/h 37 to 40 mph 32 to 35 Kt. with full water tanks 75 to 70 km/h, 47 to 43 mph, 40 to 38 Kt. Minimum sinking speed at 80 km/h (50 mph, 43 Kt.) Best glide ratio at 90 –100 km/h (56-62 mph, 49-54 Kt.) Flight polar see page 32 High Speed Flight Trim carefully in high speed flight. Otherwise excessive pitch-up may result from inadvertent freeing of stick. It is recommended to hold the stick with both hands during high speed flight to avoid oversteer. In trimmed flight the stick should be free for short periods only to avoid speed oscillation. High Speed Reduction If red line speed should be exceeded for any reason, extend air brakes carefully. Air brakes can be fully extended and retracted at 240 km/h (149 mph, 149 Kt.) Edition 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 15 _______________________________________________________ Landing Landing gear should always be extended, even during emergency landings. Final approach speed about 90 km/h (56 mph, 49 Kt). Air brakes allow wide control of glide angle. Touch down recommended with air brakes half extended. Avoid side slip with air brakes extended, because of T-tail shaking due to air brake turbulence. Minimum speed with air brakes fully extended increases to 70-75 km/h (43-47 mph, 38-40 Kt) with full water ballast 80-90 km/h (50-56 mph, 43-54 Kt) Wheel Brake Wheel brake is coupled to air brake system and brake operation starts with air brakes almost fully extended. The wheel brake is an emergency brake and should be used sparingly to avoid excessive wear. Edition 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 22 _______________________________________________________ Flight Control Travel Limits Elevator deflection Up 60 ± 2 mm 1.575 ± 0.08 in Down 40 ± 2 mm 2.362 ± 0.08 in Radius 230 mm 9.055 in Rudder deflection Both sides 200 ± 10 mm 7.874 ± 0.394 in Radius 420 mm 16.535 in Aileron deflection Up 75 ± 5 mm 2.953 ± 0.197 in Down 32 ± 3 mm 1.260 ± 0.118 in Radius 168 mm 6.614 in Tyre pressure Without water ballast 3 bars, 44 psi With water ballast 3.5 bars, 51 psi Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 23 _______________________________________________________ Placards LS1 CHECKLIST This sailplane must be operated in compliance with operating limitations as stated in the form of markings, placards and Flight Manual 1. Secure main pins 2. Secure horizontal tail 3. Connect controls 4. Connect air brakes 5. Connect parachute static line 6. Lock air brakes 7. Test controls 8. Lock canopy 9. Check tow release Edition 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 24 ______________________________________________________ Placards Edition 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 25 _____________________________________________________ __ Colour Markings of Airspeed Indicator green arc 80 – 160 km/h 50 – 99 mph 43 - 86 Kt. yellow arc 160 - 240 km/h 99 - 149 mph 86 - 130 Kt. red radial 240 km/h 149 mph 130 Kt. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 26 _______________________________________________________ Filling of Water Ballast 1) After rigging, connect both tubes to root ribs and disconnect from fuselage system for filling. Close discharge valve. 2) Lay one wingtip on the ground, fill water tank using funnel and tube with intended amount. In no case fill more than 30 litres (8 US gallons, 7 Imp. gallons), because during connection to fuselage system this will overspill into the fuselage. 3) Connect tube to fuselage system in baggage compartment. 4) Lay second wing on the ground, fill same amount with identical procedure. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual LS1 - d Page 27 _______________________________________________________ Discharge of Water Ballast Open discharge valve (Complete discharge takes about two minutes) Leave valve open after discharge to avoid pressure increase in system. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Maintenance Instructions LS1 - d Page 28 ________________________________________________________ Contents Contents......................................................................28 Maintenance and Care..................................................29 Rigging .......................................................................30 De-Rigging ..................................................................31 Flight Polar...................................................................32 Repairs.................................................................33 - 35 Control Surface Bearings ..............................................36 Cleaning and Gel Coat Care.........................................37 Inspection Sequence to increase Service Life.................38 Control Surface Weight and Mass Balance.................... 39 TB-AD-Repetitive Inspections Checklist..................40 - 42 Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Maintenance Instructions LS1 - d Page 29 ________________________________________________________ Maintenance and Care Even though the LS1 is made of fiberglass, you should protect it from humidity as you would with other sailplanes. Protect the aircraft from intense heat, as it may lead to surface deterioration. Dust particles, insects and paint damage at the leading edge of the wing reduce performance significantly. Taping of upper aileron gaps and wing-fuselage connection is necessary for control surface effectiveness and performance. The canopy should not be taped, as it might interfere with an emergency exit. Tyre pressure 3 bars (44 psi), increase to 3.5 bars (51 psi) with water ballast. The C.G. hook is exposed to dirt, therefore it requires frequent cleaning and lubrication. The static pressure pickups at the fuselage behind the wing or below the canopy front end must be kept clean. Any constriction will produce erroneous airspeed indication. Air brake boxes are air tight and water tight. Any moisture collected in the box must be wiped using a sponge as soon as possible. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Maintenance Instructions LS1 - d Page 30 ________________________________________________________ Rigging 1. Clean all pins and matching bushes 2. Insert left spar end into fuselage and watch for angle of dihedral to avoid fuselage shell damage. 3. Insert right spar end into fuselage and watch for angle of dihedral, undersides of spar ends must be parallel. 4. Insert right main pin partly to align right side by tapered portion. 5. Adjust dihedral to allow full insertion of left main pin. 6. Fully insert right main pin. Secure both main pins behind spring loaded pegs. 7. Connect aileron and air brake systems with ball snap joints (L’Hotellier quick connectors). 8. Turn LS securing sleeves half a turn. See also page 10 for detailed information and sketch of connectors and securing procedure. 9. Install horizontal tail and fix at under side with bolt. Use safety needle to tighten bolt before securing against fixed peg. 10. Install total energy unit, battery and barograph. 11. Connect automatic parachute to red marked portion at main bulkhead using special loop only. 12. Tape wing-fuselage intersection gaps on upper and lower sides. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Maintenance Instructions LS1 - d Page 31 ________________________________________________________ De-Rigging 1. Unscrew horizontal tail bolt and pull off from fuselage 2. Turn LS-sleeves half a turn (slot in downward position), unlock air bakes. 3. Disconnect control system ball snap joints (L’Hotellier quick connectors). 4. Support wing tips until unlocked main pins can be turned. Keep this wing position to avoid damage to fuselage shell and remove main pins. 5. Remove left wing without altering angle of dihedral. 6. Remove right wing. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Maintenance Instructions LS1 - d Page 38 ________________________________________________________ Inspection Sequence to Increase Service Life 1. General Results of supplementary serviceability tests at main spar booms for wings proved, that service life of FRP sailplanes may be increased to 12.000 hours if airworthiness of each single sailplane (in addition to annual inspections) is checked according to a special multi-step inspection programme. 2. Schedule When the sailplane has reached 3000 hours service life an inspection according to the programme mentioned under 3. Must be carried out. If the result of the inspection is positive or found defects repaired properly, the service life of this sailplane will be increased by 3000 hours to 6000 hours (1. Step). The inspection routine should be repeated when reaching 6000 hours. With a positive result or found defects repaired properly, service life will be increased by another 3000 hours to 9000 hours (2. Step). The inspection routine should be repeated when reaching 9000 hours. With a positive result or found defects repaired properly, service life will be increased by 1000 hours each to 10000 hours (3. Step), 11000 hours (4. Step) and 12000 hours (5. Step). 3. The valid Inspection Programme should be requested from the manufacturer stating serial number and service time. 4. Inspections should be carried out at the manufacturer or an adequately licences repair shop. 5. Results of inspections must be recorded in an inspection report, commenting to each inspection step. If inspections are not carried out at the manufacturer, a copy of the report must be sent to them for analysis. 6. This inspection does not affect annual inspections. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Maintenance Instructions LS1 - d Page 39 ________________________________________________________ Weight and Mass Balance of Control Surfaces (Check whenever change of weight is suspected) Weight and mass balance should be within given limits for safety against danger of flutter. Control Surface Radius mm / in Horizontal Reference Line Weight at rear edge of reference line kg / lbs All-up weight kg / lbs Elevator 230 9.055 xx) Not specified Rudder 420 16.535 Centreline of section 0.040 0.088 Not specified Aileron 169 6.654 Upper side of section 0.300 – 0.415 0.661 – 0.915 1.860 – 2.680 4.101 – 5.908 xx) Elevator C.G. should be between 19 to 25 mm (0.748 to 0.984 in) aft of flange of bushes. Due to system springs the elevator C.G. position cannot be measured at the fuselage, but must be done separately. Measuring Technique: Flight control surface should be supported at two bearing points without any tension or friction. Weight at rear edge should be measured with reference line at level position. Edition: 01.01.03 Rolladen-Schneider Flugzeugbau GmbH Flight Manual (Maintenance Instructions) LS1-d TB-AD-Repetitive Inspections List Page 40 Serial Number: Reg. Signs: Year of Manuf.: List opened date: ____________ Signature: Page No. 1 TB LBA-AD Components concerned Steps / Modification Interval Date Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector C.G. hook G: ___ S/N.: ______ Overhaul 2000 takeoffs Nose hook E: ___ S/N.: ______ Overhaul 2000 takeoffs Seat belt harness _____ S/N.: _________ _____ S/N.: _________ Overhaul Exchange Webbing 12 years TB 37 LBA-AD 79-44 Axially securing washers at laterally fixed control bearings Check for existence Each annual inspection Rolladen-Schneider Flugzeugbau GmbH Flight Manual (Maintenance Instructions) LS1-d TB-AD-Repetitive Inspections List Page 41 Serial Number: Reg. Signs: Year of Manuf.: List opened date: ____________ Signature: Page No. 2 TB LBA-AD Components concerned Steps / Modification Interval Date Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector TB 52 LBA-AD 93-001 Rev.3 LS securing sleeves red for L’Hotellier connectors Inspect for proper retaining and function Each annual inspection TB 56 LBA-AD 93-001 Rev.3 LS securing sleeves white for L’Hotellier connectors Inspect for proper retaining and function Each annual inspection Rolladen-Schneider Flugzeugbau GmbH Flight Manual (Maintenance Instructions) LS1-d TB-AD-Repetitive Inspections List Page 42 Serial Number: Reg. Signs: Year of Manuf.: List opened date: ____________ Signature: Page No. 3 TB LBA-AD Components concerned Steps / Modification Interval Date Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector Datum Fl.-hours Stamp Inspector ETSEIAT Grau en Enginyeria en Tecnologies Industrials Design of a bench to allocate accelerometers and gyroscopes on a sailplane Annex C: x-IMU User Manual Author: Oscar Castro Ruiz Director: Ricardo Villar Co-director: Rafael Weyler [12-06-2015] x-IMU User Manual 5.2 x-io Technologies November 1, 2013 1 Disclaimer The x-IMU and associated software are provided in an ‘as in’ condition. No warranties, whether express, implied or statutory, including but not limited to implied warranties of merchantability and fitness for a particular purpose apply. x-io Technologies shall not in any circumstances, be liable for special, incidental or consequential damages, for any reason whatsoever. 1 Contents 1 x-IMU overview 7 1.1 x-IMU Features ............................................ 7 1.2 x-IMU Software ............................................ 8 2 Getting started 9 3 Hardware overview 10 3.1 Power switch ............................................. 10 3.2 Command button ........................................... 10 3.3 LEDs ................................................. 10 3.3.1 Status LED (Green) ..................................... 10 3.3.2 SD card LED (Amber) .................................... 11 3.3.3 Bluetooth LED (Blue) .................................... 11 3.3.4 Charging LED (Red) ..................................... 11 3.4 USB socket .............................................. 11 3.5 Micro-SD card socket ......................................... 11 3.6 Bluetooth module .......................................... 11 3.7 Battery connector .......................................... 11 3.8 Auxiliary port header ........................................ 11 4 Software overview 11 4.1 x-IMU GUI .............................................. 11 4.1.1 Tab page: Serial port .................................... 11 4.1.2 Tab page: Registers ..................................... 12 4.1.3 Tab page: Date/time ..................................... 13 4.1.4 Tab page: Commands .................................... 14 4.1.5 Tab page: View sensor data ................................. 14 4.1.6 Tab page: Auxiliary port .................................. 16 4.1.7 Tab page: Data logger .................................... 17 4.1.8 Tab page: SD card ...................................... 18 4.1.9 Tab page: Hard-iron calibration .............................. 19 4.2 x-IMU API .............................................. 19 5 USB 20 5.1 Installing USB drivers ........................................ 20 5.2 USB bandwidth ............................................ 21 6 Bluetooth 21 6.1 Pairing the x-IMU with a Bluetooth host ............................. 22 6.2 Bluetooth LED ............................................ 23 6.3 Bluetooth bandwidth ......................................... 24 6.4 Optimising Bluetooth performance ................................. 24 6.5 Connecting to multiple x-IMUs via Bluetooth ........................... 24 7 SD card 24 7.1 Creating and closing files ...................................... 25 7.2 SD card LED ............................................. 25 7.3 SD card bandwidth .......................................... 25 7.4 Magnetic distortions from the SD card socket ........................... 25 8 Command button 26 9 Real-time clock and calendar 26 2 9.1 Maintaining clock power ....................................... 26 10 Sensors 26 10.1 Battery voltmeter ........................................... 27 10.2 Thermometer ............................................. 27 10.3 Gyroscope ............................................... 27 10.4 Accelerometer ............................................. 28 10.5 Magnetometer ............................................. 28 11 Sensor calibration 29 11.0.1 Magnetometer hard-iron calibration ............................ 29 12 IMU and AHRS algorithms 30 13 Power management 30 13.1 External supply ............................................ 30 13.2 Battery and charging ......................................... 30 13.3 Sleep mode .............................................. 30 13.4 Low battery voltage detection .................................... 31 13.5 Sleep timer .............................................. 31 13.6 Motion triggered wake up ...................................... 31 13.7 Tips for minimising power consumption .............................. 31 14 Auxiliary port 32 14.1 Disabled ................................................ 33 14.2 Digital I/O mode ........................................... 33 14.3 Analogue input ............................................ 34 14.4 PWM output mode .......................................... 34 14.5 ADXL345 bus mode ......................................... 35 14.6 UART mode ............................................. 35 14.6.1 UART bandwidth ...................................... 35 14.7 Sleep/wake mode ........................................... 36 15 Communication protocol 36 16 Commands 36 16.1 Individual commands ......................................... 36 16.1.1 Null command ........................................ 36 16.1.2 Factory reset ......................................... 37 16.1.3 Reset ............................................. 37 16.1.4 Sleep .............................................. 37 16.1.5 Reset sleep timer ....................................... 37 16.1.6 Sample gyroscope axis at 200 dps .............................. 37 16.1.7 Calculate gyroscope sensitivity ............................... 37 16.1.8 Sample gyroscope bias at temperature 1 .......................... 38 16.1.9 Sample gyroscope bias at temperature 2 .......................... 38 16.1.10Calculate gyroscope bias parameters ............................ 38 16.1.11Sample accelerometer axis at 1 g .............................. 38 16.1.12Calculate accelerometer bias and sensitivity ........................ 39 16.1.13Measure magnetometer bias and sensitivity ........................ 39 16.1.14Algorithm initialise ...................................... 39 16.1.15Algorithm tare ........................................ 39 16.1.16Algorithm clear tare ..................................... 39 16.1.17Algorithm initialise then tare ................................ 39 3 3 Hardware overview Figure 1: x-IMU and battery in plastic housing Figure 2: x-IMU top Figure 3: x-IMU bottom 3.1 Power switch The power switch is used to switch the battery and USB power on or off. The battery and USB power is completely disconnected when the switch is in the off position. The x-IMU may be powered by an external supply via the auxiliary port if the power switch must be in the off position. 3.2 Command button The command button that allows the execution of commands while the x-IMU is operating as a standalone device. See the command button section for more information. 3.3 LEDs 3.3.1 Status LED (Green) The green LED indicates the status of the x-IMU. It will remain lit while the device is sampling and sending data and will otherwise be extinguished; for example, during the execution of some commands. In sleep 10 mode the green LED will blink once every 3 seconds. The green LED will flash rapidly while the on-board bootloader is active. 3.3.2 SD card LED (Amber) The amber LED indicates SD card activity. See the SD card LED section for more information. 3.3.3 Bluetooth LED (Blue) The blue LED indicates the state of the Bluetooth connection and power status. See the Bluetooth LED section for more information. 3.3.4 Charging LED (Red) The red LED indicates the charging state of the battery. The red LED will remain lit while the battery is charging and will be extinguished once the battery is charged. See the battery and charging section for more information. 3.4 USB socket The USB mini-B socket is used to connect the x-IMU to a computer via a standard USB A to mini B (5 pin) type cable. See the USB section for more information. 3.5 Micro-SD card socket The micro SD card socket is used to log all data generated by the x-IMU to an SD card. The x-IMU supports standard SD and SDHC cards formatted as either FAT16 or FAT32. The file must be closed before the SD card is removed or the x-IMU switched of otherwise the current file will corrupt and data lost. See the SD card section for more information. 3.6 Bluetooth module The on-board Bluetooth module is used to connect the x-IMU to a Bluetooth host. See the Bluetooth section for more information. 3.7 Battery connector The on-board battery connector allows the x-IMU to be powered by any single-cell Lithium Polymer (LiPo) battery. The battery is automatically charged while the x-IMU is connected to a USB host. See the battery and charging section for more information. 3.8 Auxiliary port header The auxiliary port that can be configured to one of many modes. The auxiliary port connector is a 2 ×6, 2.54 mm pitch female header socket. The socket pins include: ground, external power input, 3.3 V output, hard reset and 8 I/O lines. See the auxiliary port section for more information. 4 Software overview 4.1 x-IMU GUI 4.1.1 Tab page: Serial port The serial port tab page is used to manage the USB or Bluetooth connection between the software and the x-IMU. The USB and Bluetooth connections will each appear as a separate serial port; see the USB 11 section and Bluetooth section for more information and how to find the serial port name assigned to each connection. To connect to the x-IMU, the user first select the correct serial port name the x-IMU appears as in the Port name drop down list. If the name does not appear in the list, the user can either press the Refresh List button to update the drop down list or type in the port name directly. The Open Port button may then be pressed to connect to the device. Figure 4: x-IMU GUI serial port tab page 4.1.2 Tab page: Registers The registers tab page allows the user to view, edit and back up all internal settings on the x-IMU; see the registers section for more information on x-IMU registers. All registers are organised into sections within a tree view where the end node of each branch is an individual register name and text box or drop down list containing the register value. Register values that have been read directly from the x-IMU or loaded from file will appear as blue text. Any registers values then edited will appear as red text. A right click on any register will show the action menu. To read all register on the x-IMU, the user should right click anywhere in the registers tab page and select Read all registers. The software will then read each register and update the values in the tree view. Individual registers or groups of registers may be read by first selecting a register or group within the tree view and then selecting Read this register only or Read all registers in this group only. Register values in the tree view may be written to the x-IMU using the Write all registers,Write this register only and Write all registers in this group only options in the action menu. 12 Figure 5: x-IMU GUI registers tab page with (right click) action menu 4.1.3 Tab page: Date/time The date/time tab page allows the user to view and set the date and time of the x-IMU’s real-time clock and calendar. The Received date/time text box displays the date and time each time it is received from the x-IMU. The Read Date/Time button may be used to read the current date and time of the x-IMU; this is of use if date/time data rate has been disabled. Pressing the Set Date/Time button will set the x-IMU date and time equal to computer date and time. Figure 6: x-IMU GUI date/time tab page 13 4.1.4 Tab page: Commands The commands tab page is used to send commands to the x-IMU. See the commands section for more information on individual commands. Once the x-IMU has processed a command it will echo the command back and it will appear in a message box. To suppress these message boxes, un-check the Display received command messages in message box check box. Figure 7: x-IMU GUI date/time tab page 4.1.5 Tab page: View sensor data The view sensor data tab page contains buttons to show or hide separate real-time data graphic windows for incoming x-IMU sensor data. 14 Figure 8: x-IMU GUI view sensor data tab page The data from individual sensors is displayed in real-time data graphs as seen in Figure 8. The controls bar at the bottom of each graph allow the view and scaling to be adjusted. Figure 9: x-IMU GUI gyroscope data window Orientation data received may be displayed in a graph as ZYX Euler angles and displayed as the orientation of a 3D cuboid as seen in figure 10. The cuboid is displayed in a screen coordinate frame where the x-axis is aligned to the width of the screen (left to right), the z-axis aligned to the height (bottom to top) and the y-axis projects into the screen. To align the motion of the physical x-IMU and 3D cuboid displayed on the screen, the user should first align the axes of the physical x-IMU to the screen coordinate frame and then use the algorithm tare command. 15 Figure 10: x-IMU GUI 3D cuboid window 4.1.6 Tab page: Auxiliary port The auxiliary port tab page contains buttons to show or hide individual control windows for the different modes of the auxiliary port. Figure 11: x-IMU GUI auxiliary port tab page Digital I/O control panel The digital I/O control panel displays the state and mode of each channel of the auxiliary port when in digital I/O mode as shown in figure 12. Each channel is represented by a check box. If the channel mode is output then the check box is enabled and may be checked or un-checked to set the channel high or low respectively. If the channel is an input the check box is disabled and will be checked or un-checked if the channel is high or low respectively. 16 Figure 12: x-IMU GUI digital I/O control panel 4.1.7 Tab page: Data logger The data logger tab allows the user to log incoming real-time data to file. These files may be imported to user software such as Microsoft Excel and MATLAB. The user may select the location and first part of the file name in the File path text box. This file name will be extended with an appropriate description and extension when the individual data files are created. For example, if a file name of myFile is specified, Euler angle and date/time data will be saved to myFile_EulerAngles.csv and myFile_DateTime.txt. Figure 13: x-IMU GUI data logger tab page The Start/Stop Logging button is used to start and stop the data logger. When logging is stopped, a report window will be presented detailing the number of each type of packet logged and the specific data files created; as shown in figure 14. 17 Figure 14: x-IMU GUI data logger report 4.1.8 Tab page: SD card The SD card tab page allows the user to convert binary files (.bin) saved to the SD card in to readable data files. These files may be imported to user software such as Microsoft Excel and MATLAB. The location and file name must be specified in the File path text box. The file conversion will start when the Convert button is clicked. This process occurs in the background and may take a while if a large binary file is specified. Figure 15: x-IMU GUI SD card tab page Once the conversion is complete, a report window will be presented detailing the number of each type of packet read and the specific data files created; as shown in figure 16. 18 Figure 16: x-IMU GUI binary file conversion report 4.1.9 Tab page: Hard-iron calibration The hard-iron calibration tab page provides all the functionality required for the user to calibrate for hard-iron interferences affecting the x-IMU. It is necessary to re-calibrate hard-iron parameters whenever the x-IMU’s magnetic characteristics are changed; for example, when the x-IMU if fitted to a battery or mounting that includes ferromagnetic elements. The 3 group boxes, Step 1 - Clear Hard-Iron Bias Registers,Step 2 - Collect Hard-Iron Calibration Dataset and Step 3 - Run Hard-Iron Calibration Algorithm represent the 3 steps that must be performed in order. See the magnetometer hard-iron calibration section for more information. Figure 17: x-IMU GUI hard-iron calibration tab page 4.2 x-IMU API The x-IMU API (Application Programming Interface) is a code library that contains all the classes, data structures and methods required to interface to all features and functionality of the x-IMU. The x-IMU API is an open source project written in C# and targets Microsoft .NET 3.5. Documentation for use of the API 19 8 Command button The x-IMU features a configurable command button that allows the execution of commands while the xIMU is operating as a standalone device. The command button modes are detailed below. Only reset and sleep/wake up modes remain active while the x-IMU is in sleep mode. The command button is also used to confirm the factory reset command. Command button modes •Disabled •Reset command •Sleep/wake up •Algorithm initialise command •Algorithm tare command •Algorithm initialise then tare command 9 Real-time clock and calendar The on-board real-time clock and calendar provides accurate measurement of the date and time and is preprogrammed to account for leap-years between the year 2000 and 2099. The real-time clock and calendar data can be viewed and synchronised with the computer clock using the x-IMU via the Date/Time tab page. The real-time clock and calendar data is provided by the x-IMU in the write date/time data packets. The data output rate of these packets may be set to disabled, 1 Hz, 2 Hz, 4 Hz, 8 Hz, 16 Hz, 32 Hz, 64 Hz, 128 Hz, 256 Hz or 512 Hz in the date/time data rate register. A single date/time data packet is always sent on device reset regardless of user settings so that the date and time are always available as the first packet written to the SD card. The real-time clock and calendar is set by sending a write date/time data packet to the x-IMU, once the new date and time have been set the x-IMU will respond with a write date/time data containing the real-time clock and calendar data. The date and time may read at any time by sending a read date/time data packet to the x-IMU. 9.1 Maintaining clock power The real-time clock and calendar requires power to operate. If power is lost or the x-IMU switch off then the date and time will reset to 01/01/2000 00:00:00. Applications that require date and time to be maintained should ensure that the x-IMU is never switched off and instead take advantage of sleep mode. 10 Sensors The x-IMU’s on-board sensors include a triple axis gyroscope, triple axis accelerometer, triple axis magnetometer, thermometer and a battery voltmeter. The user may access individual sensor data as either raw un-calibrated ADC results or as calibrated units by specifying the mode in the sensor data mode register. The data from individual sensors is provided in either the raw inertial/magnetic data and raw battery and thermometer data packets or the calibrated inertial/magnetic data and calibrated battery and thermometer data packets. The data output rate of these packets may be set to disabled, 1 Hz, 2 Hz, 4 Hz, 8 Hz, 16 Hz, 32 Hz, 64 Hz, 128 Hz, 256 Hz or 512 Hz in the battery and thermometer data output rate and inertial/magnetic data output rate registers. 26 10.1 Battery voltmeter The battery voltmeter allows the battery voltage to be monitored by the user application. The battery voltmeter must be correctly calibrated if the low battery voltage detection functionality is to be used. The battery voltmeter has 12-bit resolution and a range of 0 V to 6.6 V. When the power switch is in the off position and the x-IMU is powered from an external supply via the auxiliary port the battery voltmeter will measure the voltage of the external supply. Raw ADC data: In raw data mode the battery voltmeter data is the ADC integer value between 0 and 4096 corresponding to a voltage between 0 V and 6.6 V. This data is provided in the raw battery and thermometer data packets. Calibrated data: In calibrated data mode the battery voltmeter data is the calibrated measurement in Volts. This data is provided in the calibrate battery and thermometer data packets. The calibrated measurement vis calculated from the raw ADC measurements ˜vaccording to a sensitivity svand bias bvas described by equation (1). Parameters bvand svare defined in the battery voltmeter sensitivity and bias registers. v=1 sv (˜v−bv) (1) 10.2 Thermometer The thermometer is built in to the gyroscope and provides a measurement of the temperature of the device. The thermometer must be correctly calibrated for calibrated gyroscope measurements to compensate for gyroscope bias temperature sensitivity. The thermometer has 16-bit resolution and has a range of -30◦C to +85◦C. See the IMU-3000 datasheet for further information on the thermometer’s characteristics. Raw ADC data: In raw data mode the thermometer data is the ADC integer value between −32,768 and +32,767 linearly proportional to temperature. This data is provided in the raw battery and thermometer data packets. Calibrated data: In calibrated data mode the thermometer data is the calibrated temperature in ◦C. This data is provided in the calibrate battery and thermometer data packets. The calibrated measurement τ is calculated from the raw ADC measurement ˜τaccording to a defined sensitivity sτand bias bτas described by equation (2). Parameters bτand sτare defined in the thermometer sensitivity and bias registers. τ=1 sτ (˜τ−bτ) (2) 10.3 Gyroscope The triple axis gyroscope provides a measurement of the angular velocities around the x,yand zaxes of the x-IMU. The gyroscope must be correctly calibrated in order for the IMU and AHRS algorithms to be able to function correctly; the algorithms use measurements of angular velocities to filter out errors in the estimated orientation caused by linear accelerations and temporal magnetic distortions. The gyroscope has 16-bit resolution and a range of ±250◦/s, ±500◦/s, ±1000◦/s or ±2000◦/s selected in the gyroscope full-scale register. See the IMU-3000 datasheet for further information on the gyroscope’s characteristics. Raw ADC data: In raw data mode the gyroscope data is the ADC integer values between −32,768 and +32,767 linearly proportional to angular velocities. This data is provided in the raw inertial/magnetic data packets. 27 Calibrated data: In calibrated data mode the gyroscope data are calibrated angular velocities in ◦/s. This data is provided in the calibrated inertial/magnetic data packets. The calibrated measurements gx,gy and gzare calculated from the raw ADC measurements ˜gx, ˜gyand ˜gzaccording to the defined sensitivities sgx,sgyand sgz, temperature of the device τ, biases at 25◦Cbgx,bgyand bgz, bias temperature sensitivities fx,fyand fz, and bias drift compensation parameters αx,αyand αzprovided by the IMU and AHRS algorithms. The calibrated measurements are described by equation (3). Parameters sgx,sgy,sgz,bgx,bgy, bgz,fx,fyand fzare defined in the separate gyroscope calibration parameters registers. The sensitivities and biases will be different for each full-scale measurement range.   gx gy gz  =  sgx0 0 0sgy0 0 0 sgz   −1     ˜gx ˜gy ˜gz  −  bgx bgy bgz  −  fx0 0 0fy0 0 0 fz   −1  τ−25 τ−25 τ−25  −  αx αy αz     (3) 10.4 Accelerometer The triple axis accelerometer and provides a measurement of the accelerations along the x,yand zaxes of the x-IMU. The accelerometer must be correctly calibrated in order for the IMU and AHRS algorithms to be able to function correctly; the algorithms use the accelerometer to measure the direction of gravity and provide an absolute reference for the pitch and roll components of the estimated orientation. The accelerometer has 12-bit resolution and selectable ranges from ±2 g to ±8 g. The measurement range of the accelerometer is defined in accelerometer full scale register. See the LSM303DLH datasheet for further information on the accelerometer’s characteristics. Raw ADC data: In raw data mode the accelerometer data is the ADC integer values between −4096 and +4095 linearly proportional to accelerations. This data is provided in the raw inertial/magnetic data packets. Calibrated data: In calibrated data mode the accelerometer data are calibrated accelerations in g. This data is provided in the calibrated inertial/magnetic data packets. The calibrated measurements ax,ayand azis calculated from the raw ADC measurements ˜ax, ˜ayand ˜azaccording to the defined sensitivities sax, sayand sazand biases bax,bayand bazas described by equation (4). Parameters sax,say,saz,bax,bayand bazare defined in the separate accelerometer calibration parameters registers. The sensitivities and biases will be different for each full-scale measurement range.   ax ay az  =  sax0 0 0say0 0 0 saz   −1   ˜ax ˜ay ˜az  −  bax bay baz   (4) 10.5 Magnetometer The triple axis magnetometer and provides a measurement of the magnetic flux along the x,yand z axes. The magnetometer must be correctly calibrated in order for the AHRS algorithm to be able to function correctly; the algorithm uses the magnetometer to measure the Earth’s magnetic field and provide an absolute reference for the heading component of the estimated orientation. The magnetometer has 12-bit resolution and selectable ranges from ±1.3 G to ±8.1 G. The measurement range of the magnetometer is defined in magnetometer full scale register. See the LSM303DLH datasheet for further information on the magnetometer’s characteristics. Raw ADC data: In raw data mode the magnetometer data is the ADC integer values between −4096 and +4095 linearly proportional to magnetic flux. This data is provided in the raw inertial/magnetic data packets. A value of -4096 will be provided when the measurement saturates in either direction. 28 Calibrated data: In calibrated data mode the magnetometer data are calibrated accelerations in G. This data is provided in the calibrated inertial/magnetic data packets. The calibrated measurements mx,myand mzare calculated from the raw ADC measurements ˜mx, ˜myand ˜mzaccording to the defined sensitivities smx,smyand smz, biases bmx,bmyand bmzand hard-iron biases hx,hyand hzas described by equation (5). Parameters smx,smy,smz,bmx,bmy,bmz,hx,hyand hzare defined in the separate magnetometer calibration parameters registers. The sensitivities and biases will be different for each full-scale measurement range.   mx my mz  =  smx0 0 0smy0 0 0 smz   −1   ˜mx ˜my ˜mz  −  bmx bmy bmz   −  hx hy hz  (5) 11 Sensor calibration The sensitivity and bias of the gyroscope, accelerometer and magnetometer are calibrated at the factory using precision equipment. The user is recommended not to attempt to recalibrate these parameters. Please contact x-io Technologies for more information. 11.0.1 Magnetometer hard-iron calibration Magnetic elements fixed to the x-IMU such as metal screws, the battery or electronics components may introduce hard-iron biases to magnetometer measurements. These biases must be compensated for through hard-iron calibration. Uncalibrated hard-iron distortions will cause significant errors in the x-IMUs estimated heading. Each x-IMU is fully calibrated at the factory. However, many applications may alter the hard-iron characteristics and so require the user perform hard-iron calibration using the x-IMU GUI. Before performing hard-iron calibration, the x-IMU registers must be set to output calibrated inertial and magnetic data packets at 256 Hz. Calibration can then be performed by following steps 1, 2 and 3 indicated on the Hard-Iron Calibration tab in the x-IMU GUI. Step 2 requires the user to collect a calibration dataset where the x-IMU (and any ferromagnetic elements it is fixed to) are rotated through as many and as different orientations as possible far away from other magnetic distortions. The x-IMU should held far from all objects in a room for the duration of the dataset collection. Figure 22: x-IMU GUI hard-iron calibration tab page 29 The SD card socket will have different magnetic characteristics depending if an SD card is secured in the socket or not. Each x-IMU is calibrated at the factory with a dummy SD card inserted to reduce the need for user calibration. 12 IMU and AHRS algorithms The x-IMU features an sensor fusion algorithm that use the on-board sensors to compute a measurement of orientation relative to the Earth. The algorithm can operate in either IMU or AHRS mode. IMU mode uses only the gyroscope and accelerometer. In this mode, the head component of the measurement orientation will slowly drift over time. However, magnetic distortions or interference will have no effect on the sensor as the magnetometer is not used. IMU mode is of use in application that require only an accurate measurement of the pitch and roll components of an orientation or do not need an absolute measurement of heading. AHRS mode uses all of the on-board sensors so that the measurement of orientation is free from drift. The sensor fusion algorithm has a number of associated commands. The Initialise command will cause the algorithm to reinitialise so that the proportional gain (Kp) governing how quickly the algorithm output converges to the accelerometer and magnetometer measurements, starts at a high value and is ramped down to the operating value. The Tare command will save the current orientation so that all algorithm becomes relative to this datum. A Tare operation is saved to non-volatile memory and so will remain in effect even if the device is reset. A Clear Tare command will cancel this operation and clear the memory. 13 Power management The x-IMU may be powered via USB, an external power supply or a single cell lithium polymer (LiPo) battery cell which will be charged automatically while the x-IMU is connected to a USB port. 13.1 External supply The x-IMU may be powered by a 3.5 to 6.3 V external supply via the auxiliary port. The supply should be connected to the GND and EXT pins of the auxiliary port. This power supply is only enabled while the power switch is in the off position. In this situation, the battery voltmeter will measure the voltage of the external supply. 13.2 Battery and charging The x-IMU has a standard connector for a 3.7 V single cell Lithium Polymer (LiPo) battery cell. These batteries are widely available in range of capacities, for example 1000 mAh and 2000 mAh. The battery life is dependent on user settings and usage. See the tips on minimising power consumption section. The x-IMU has an on-board battery charger specially designed for LiPo battery cells. The battery is charged automatically while the x-IMU is connected to a USB port. The red charging LED will remain lit while the battery is charging. Charging stops automatically once complete. The x-IMU may be used as normal while the battery is charging. It is not necessary for the connected computer to have the USB drivers installed for charging, however the charging process will be faster if the drivers are installed. 13.3 Sleep mode In sleep mode, the x-IMU remains powered but all on-board components are shutdown. This allows the device to be powered down without removing power from essential components; for example, the real time clock and calendar. The green status LED will blink once every 3 seconds to indicate that the device is in sleep mode. Sleep mode is enabled through the sources listed below. The x-IMU will reset upon wake up so that the same behaviour may be expected when the devices is powered on, reset or awakened. The wake up sources are listed below. 30 Sleep mode enable sources: •Command button in sleep/wake mode •Sleep command via USB,Bluetooth or UART •Low battery voltage detection •Sleep timer •Sleep/wake mode Wake up sources •Command button in sleep/wake mode •Motion trigger wake up 13.4 Low battery voltage detection The calibrated battery voltmeter is used to trigger sleep mode when the battery voltage falls below a specific level defined in the battery shutdown voltage register. This allows the x-IMU to execute critical tasks prior to power failure; for example closing the file on the SD card and notifying the user or host software with a low battery error. By entering sleep mode prior to power failure the x-IMU also ensures that the date and time of the real-time clock and calendar are not lost. The low battery voltage detection is disabled while USB is connected. 13.5 Sleep timer The sleep timer will trigger sleep mode after the period of time defined in the sleep timer register has elapsed. The sleep timer countdown starts when the x-IMU starts up and may be reset by the sources listed below. These sources enable the detection of motion, the user or the host software to prevent the x-IMU from entering sleep mode. The sleep timer is disabled by specifying a sleep timer register value of 0 seconds. The sleep timer is disabled while USB is connected. Sleep timer reset sources •reset sleep timer command •Motion trigger wake up 13.6 Motion triggered wake up The motion trigger wake up is enabled via the motion trigger wake up register and may be either disabled or set to a low or high sensitivity. Motion is detected using accelerometer. If motion is detected while the x-IMU is in sleep mode then the x-IMU will wake up. While the x-IMU is not in sleep mode the motion trigger wake up is used to reset the sleep timer and thus postpone sleep while motion persists. For example, if the sleep timer is set to 20 seconds and there is motion is detected at least once every 20 seconds the motion trigger wake up will prevent the sleep timer from expiring and the x-IMU will not enter sleep mode. However, if no motion is detected for 20 seconds the x-IMU will enter sleep mode. If motion is then detected while in sleep mode, the x-IMU will wake up. 13.7 Tips for minimising power consumption Battery powered applications require that power consumption is minimised in order to extend the battery life. The x-IMU is designed to optimise power consumption according to user settings. The user may therefore expect a considerable reduction in power consumption and extended battery life simply by using register settings appropriate to their application. 31 Tips •Set data output rates of unused data to disabled. •Use the minimum data output rates required by application. •Set algorithm mode to disabled if the IMU and AHRS algorithms are not required. •Disable Bluetooth power if not Bluetooth is unused. •Use the sleep timer and motion trigger wake up to automatically enter sleep mode during periods of inactivity. 14 Auxiliary port The x-IMU features an auxiliary port that can be configured to one of many modes. The auxiliary port connector is a 2 ×6, 2.54 mm pitch female header socket. The socket pins include: ground, an external power input, 3.3 V power output, hard reset and 8 I/O channels. The pins are annotated in Figure 23 and summarised in table 2. Figure 23: Auxiliary port pins 32 Pin Description Min/Max GND Common ground N/A EXT External power input 3.5 V to 6.3 V RST Hard reset (active low) 0 V to 3.3 V 3V3 3.3 V power output 100 mA AX0 to AX7 I/O channels 0 V to 3.3 V, 4 mA source/sink Table 2: Auxiliary port pins The mode of the auxiliary port is set by the auxiliary port mode register. If the x-IMU receives a packet associated with a specific axillary port mode while the axillary port is not in that mode the x-IMU will respond with an incorrect auxiliary port mode error. For example, this will happen if the x-IMU receives a digital I/O packet to change a digital output channel while the axillary port mode is disabled. Auxiliary port modes •Disabled •Digital I/O •Analogue input •PWM output •ADXL345 bus •UART •Sleep/wake mode 14.1 Disabled When disabled, all auxiliary port channels are configured as high-impedance inputs. The auxiliary port in disabled when the x-IMU is in sleep mode. Table 3summarises the auxiliary port pin assignments when disabled. Pin I/O Description AX0 Input Unused AX1 Input Unused AX2 Input Unused AX3 Input Unused AX4 Input Unused AX5 Input Unused AX6 Input Unused AX7 Input Unused Table 3: Auxiliary port pin assignments when disabled 14.2 Digital I/O mode In digital I/O mode each pin of the auxiliary port functions as either a digital input or output. The direction of each pin is defined within the digital I/O direction register. Digital input data is provided in either the digital I/O data packets received from the x-IMU. The data output rate of these packets may be set to on change only, 1 Hz, 2 Hz, 4 Hz, 8 Hz, 16 Hz, 32 Hz, 64 Hz, 128 Hz, 256 Hz or 512 Hz in the digital I/O data output rate register. Digital outputs are set by sending a digital I/O data packet to the x-IMU. 33 Pin I/O Description AX0 Input/Output Digital I/O AX1 Input/Output Digital I/O AX2 Input/Output Digital I/O AX3 Input/Output Digital I/O AX4 Input/Output Digital I/O AX5 Input/Output Digital I/O AX6 Input/Output Digital I/O AX7 Input/Output Digital I/O Table 4: Auxiliary port pin assignments in digital I/O mode 14.3 Analogue input In analogue input mode all 8 pins of the auxiliary port function as analogue inputs. Each analogue input channel sas a 12-bit resolution and a range of 0 V to 3.3 V. The user may access analogue input data as either raw un-calibrated ADC results or as calibrated units by specifying the mode in the analogue input data mode register. Analogue input data is provided in either the raw analogue input data or calibrated analogue input data packets. The data output rate of these packets may be set to disabled, 1 Hz, 2 Hz, 4 Hz, 8 Hz, 16 Hz, 32 Hz, 64 Hz, 128 Hz, 256 Hz or 512 Hz in the analogue input data output rate register. Raw ADC data: In raw data mode the analogue input data is the ADC integer value between 0 and 4096 corresponding to a voltage between 0 V and 3.3 V. This data is provided in the raw analogue input data packets. Calibrated data: In calibrated data mode the analogue data is the calibrated measurement in Volts. This data is provided in the calibrate analogue data packets. The calibrated measurement anis calculated from the raw ADC measurements ˜vaccording to a sensitivity sanand bias banas described by equation (6). Parameters sanand banare defined in the analogue input sensitivity and bias registers. an=1 san ( ˜an−ban) (6) Pin I/O Description AX0 Input Analogue input channel AX0 AX1 Input Analogue input channel AX1 AX2 Input Analogue input channel AX2 AX3 Input Analogue input channel AX3 AX4 Input Analogue input channel AX4 AX5 Input Analogue input channel AX5 AX6 Input Analogue input channel AX6 AX7 Input Analogue input channel AX7 Table 5: Auxiliary port pin assignments for analogue input mode 14.4 PWM output mode In PWM output mode four pins of the auxiliary port function as digital PWM outputs. Unused pins are configured as high-impedance inputs. The PWM frequency may be set from 3 Hz to 65,535 Hz in the PWM frequency register. The duty cycle of each of the four PWM output channels are set by sending a PWM data packet to the x-IMU. The x-IMU echo back the packet as confirmation after the duty cycles have been set. 34 Pin I/O Description AX0 Output PWM output channel AX0 AX1 Input Unused AX2 Output PWM output channel AX2 AX3 Input Unused AX4 Output PWM output channel AX4 AX5 Input Unused AX6 Output PWM output channel AX6 AX7 Input Unused Table 6: Auxiliary port pin assignments for PWM output mode 14.5 ADXL345 bus mode This section is currently unavailable but can be updated on request. Pin I/O Description AX0 Output ADXL345 A SPI CS AX1 Input SPI CLK AX2 Output ADXL345 B SPI CS AX3 Input SPI DIN AX4 Output ADXL345 C SPI CS AX5 Input SPI DOUT AX6 Output ADXL345 D SPI CS AX7 Input Power enable Table 7: Auxiliary port pin assignments for ADXL345 bus mode 14.6 UART mode In UART mode four pins of the auxiliary port function as a configurable UART with hardware flow control. The Bluetooth power will automatically be disabled when UART mode is enabled. Commination via the auxiliary port UART is identical to that via the virtual serial ports enabled by the Bluetooth or USB connection. The UART baud rate may be set to 2400, 4800, 7200, 9600, 14400, 19200, 38400, 57600, 115200, 230400, 460800 or 921600 baud in the UART baud rate register. The UART hardware flow control can be enabled or disabled in the UART hardware flow control register. Pin I/O Description AX0 Output RX AX1 Input Unused AX2 Output TX AX3 Input Unused AX4 Output CTS AX5 Input Unused AX6 Output RTS AX7 Input Unused Table 8: Auxiliary port pin assignments for UART mode 14.6.1 UART bandwidth It is possible for the user to define data output rates so that the amount of data being generated by the x-IMU exceeds the bandwidth of a communication channel. If the UART bandwidth is exceed, the UART transmit buffer will overrun and some data will be lost. When this happens a UART transmit buffer overrun error will be generated. As this error is sent immediately after the buffer has overrun, the error will be 35 17.1.14 Invalid register address Error code: 0x000D Description: An invalid register address error will be sent if the read or write register packet contains an invalid register address. This error is only relevant to users developing their own communication software and not using the x-IMU API or x-IMU GUI. 17.1.15 Register read-only Error code: 0x000E Description: Aregister read-only error will be sent if the write register packet represents an attempt to write a read-only register. 17.1.16 Invalid register value Error code: 0x000F Description: An invalid register value error will be sent if the write register packet contains an invalid register value for the specific address. This error is only relevant to users developing their own communication software and not using the x-IMU API or x-IMU GUI. 17.1.17 Invalid command Error code: 0x0010 Description: An invalid command error will be sent if the command code within the command packet is not valid. This error is only relevant to users developing their own communication software and not using the x-IMU API or x-IMU GUI. 17.1.18 Gyroscope axis not at 200 dps Error code: 0x0011 Description: Agyroscope axis not at 200 dps error will be sent if an axis is detected as not being at approximately ±200◦/s during the execution of a sample gyroscope axis at 200 dps command and the execution of the command was aborted. See the gyroscope sensitivity calibration section for more information. 17.1.19 Gyroscope not stationary Error code: 0x0012 Description: Agyroscope not stationary error will be sent if the gyroscope was detected as not being stationary during the execution of a sample gyroscope bias commands and the execution of the command was aborted. See the gyroscope bias calibration section for more information. 17.1.20 Accelerometer axis not at 1g Error code: 0x0013 Description: Aaccelerometer axis not at 1g error will be sent if an axis is detected as not being at approximately ±1 g during the execution of a sample accelerometer axis at 1 g command and the execution of the command was aborted. See the accelerometer calibration section for more information. 17.1.21 Magnetometer saturation Error code: 0x0014 Description: Amagnetometer saturation error will be sent if the measurements taken during the execution of the measure magnetometer bias and sensitivity command were detected as having saturated and the execution of the command was aborted. See the magnetometer calibration section for more information. 42 17.1.22 Incorrect auxiliary port mode Error code: 0x0015 Description: An incorrect auxiliary port mode error will be sent if an auxiliary port action is requested while the auxiliary port is not in the correct mode for that action. For example, an incorrect auxiliary port mode error will be sent if a digital IO data packet is received while the auxiliary port mode is disabled. See the auxiliary port section for more information. 17.1.23 UART receive buffer overrun Error code: 0x0016 Description: AUART receive buffer over error will be sent if the UART receive buffer overruns and data to be received was lost. This occurs when data is transmitted to the x-IMU at a rate greater than the rate it can be processed. Consider reducing the rate at which data is sent to the x-IMU if this error occurs repeatedly. See the UART bandwidth section for more information. 17.1.24 UART transmit buffer overrun Error code: 0x0017 Description: AUART transmit buffer overrun error will be sent if the UART transmit buffer overruns and data due to be transmitted was lost. This will occur when the communication channel bandwidth is unable to cope with the amount of data being transmitted. Consider using lower data output rates if this error occurs repeatedly. This error may be ignored in applications where UART data is not essential and the SD card is the intended data output. In such applications, the user need only be concerned with SD card write buffer overrun errors. See the UART bandwidth section for more information. 18 Registers All x-IMU settings are stored within a bank of registers in non-volatile flash memory and loaded each time the x-IMU starts up. Each register has a 16-bit address and 16-bit value. These values may be viewed, modified, read, written and backed up to file using the x-IMU GUI via the Registers tab page. 18.1 Reading registers Any register may be read by sending a read register packet containing register address to be read. The xIMU will respond with a register write packet containing the register address and value. If the read register packet contains an invalid register address then the x-IMU will respond with an invalid register address error. The x-IMU will automatically send all register values on start up so that settings are stored as the first packets written to the SD card. 18.2 Writing registers A register may be written by sending a register write packet containing the register address to be written to and the new register value. The x-IMU will respond with a register write packet containing the register address and confirmed value. If the value written is different from the current register value then the x-IMU will save the new value to the flash memory and perform any required actions (e.g. reconfigure the IMU-3000 for a different gyroscope full-scale range. If the write register packet contains an invalid register address then the x-IMU will respond with an invalid register address error. If the register write packet contains a register value that is invalid for the specified address then the x-IMU will respond with an invalid register value error. If a register write packet contains a register address that is read-only then the x-IMU will respond with a register read-only error. 43 18.3 Individual registers 18.3.1 Firmware version major number Address: 0x0000 Value: 0 to 65534. Read-only. Description: The major number of the current firmware version loaded on the x-IMU. 18.3.2 Firmware version minor number Address: 0x0001 Value: 0 to 65534. Read-only. Description: The minor number of the current firmware version loaded on the x-IMU. 18.3.3 Device ID Address: 0x0002 Value: 0x0000 to 0xFFFF. Read-only. Description: The 4 digit hexadecimal ID of the x-IMU taken as the last 2 bytes of the Bluetooth MAC address. 18.3.4 Button mode Address: 0x0003 Value: 0x0000 = Disabled 0x0001 =Reset command 0x0002 =Sleep/wake up 0x0003 =Algorithm initialise command 0x0004 =Algorithm tare command 0x0005 =Algorithm initialise then tare command Description: The command to be executed when the command button is pressed. See the commands section for more information and details of individual commands. 18.3.5 Battery voltmeter sensitivity Address: 0x0004 Value: Q11.5 signed fixed point value between −1024 and +1023.969. Description: Calibrated sensitivity of the battery ADC in lsb/V. See parameter svin the battery voltmeter section. The typical calibrated value is 621 lsb/V. 18.3.6 Battery voltmeter bias Address: 0x0005 Value: Q8.8 signed fixed point value between −128 and +127.9961. Description: Calibrated bias of the battery ADC in lsb. See parameter bvin the battery voltmeter section. The typical calibrated value is 0 lsb. 18.3.7 Thermometer sensitivity Address: 0x0006 Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the thermometer in lsb/◦C. See parameter sτin the thermometer section. The typical calibrated value is provided as 280 lsb/◦C in the IMU-3000 datasheet. 44 18.3.8 Thermometer bias Address: 0x0007 Value: Q16.0 signed fixed point value between −32768 and +32677. Description: Calibrated bias of the thermometer in lsb. See parameter bτin the thermometer section. The typical calibrated value is provided as −23,000 lsb in the IMU-3000 datasheet. 18.3.9 Gyroscope full-scale Address: 0x0008 Value: 0x0000 =±250◦/s 0x0001 =±500◦/s 0x0002 =±1000◦/s 0x0003 =±2000◦/s Description: Full-scale range of the gyroscope. Each full-scale range will have different associated sensitivity and bias values. The gyroscope should therefore be recalibrated when the full-scale range is changed. See the gyroscope calibration section for more information. 18.3.10 Gyroscope x-axis sensitivity Address: 0x0009 Value: Q9.7 signed fixed point value between −256 and +255.9922. Description: Calibrated sensitivity of the gyroscope x-axis in lsb/◦/s. See parameter sgxin the gyroscope section. The value of the parameter can be accurately evaluated through calibration using the calculate gyroscope sensitivity command. See the gyroscope sensitivity calibration section for more information. 18.3.11 Gyroscope y-axis sensitivity Address: 0x000A Value: Q9.7 signed fixed point value between −256 and +255.9922. Description: Calibrated sensitivity of the gyroscope y-axis in lsb/◦/s. See parameter sgyin the gyroscope section. The value of the parameter can be accurately evaluated through calibration using the calculate gyroscope sensitivity command. See the gyroscope sensitivity calibration section for more information. 18.3.12 Gyroscope z-axis sensitivity Address: 0x000B Value: Q9.7 signed fixed point value between −256 and +255.9922. Description: Calibrated sensitivity of the gyroscope z-axis in lsb/◦/s. See parameter sgzin the gyroscope section. The value of the parameter can be accurately evaluated through calibration using the calculate gyroscope sensitivity command. See the gyroscope sensitivity calibration section for more information. 18.3.13 Gyroscope sampled x-axis at +200 dps Address: 0x000C Value: Q16.0 signed fixed point value between −32,768 and +32,767. Description: Sampled gyroscope x-axis output in lsb when rotating at +200◦/s, obtained through the execution of the sample gyroscope axis at 200 dps command. This value is used by the gyroscope sensitivity calibration algorithm to calculate the gyroscope x-axis sensitivity. See the gyroscope sensitivity calibration section for more information. 45 18.3.14 Gyroscope sampled y-axis at +200 dps Address: 0x000D Value: Q16.0 signed fixed point value between −32,768 and +32,767. Description: Sampled gyroscope y-axis output in lsb when rotating at +200◦/s, obtained through the execution of the sample gyroscope axis at 200 dps command. This value is used by the gyroscope sensitivity calibration algorithm to calculate the gyroscope y-axis sensitivity. See the gyroscope sensitivity calibration section for more information. 18.3.15 Gyroscope sampled z-axis at +200 dps Address: 0x000E Value: Q16.0 signed fixed point value between −32,768 and +32,767. Description: Sampled gyroscope z-axis output in lsb when rotating at +200◦/s, obtained through the execution of the sample gyroscope axis at 200 dps command. This value is used by the gyroscope sensitivity calibration algorithm to calculate the gyroscope z-axis sensitivity. See the gyroscope sensitivity calibration section for more information. 18.3.16 Gyroscope sampled x-axis at -200 dps Address: 0x000F Value: Q16.0 signed fixed point value between −32,768 and +32,767. Description: Sampled gyroscope x-axis output in lsb when rotating at −200◦/s, obtained through the execution of the sample gyroscope axis at 200 dps command. This value is used by the gyroscope sensitivity calibration algorithm to calculate the gyroscope x-axis sensitivity. See the gyroscope sensitivity calibration section for more information. 18.3.17 Gyroscope sampled y-axis at -200 dps Address: 0x0010 Value: Q16.0 signed fixed point value between −32,768 and +32,767. Description: Sampled gyroscope y-axis output in lsb when rotating at −200◦/s, obtained through the execution of the sample gyroscope axis at 200 dps command. This value is used by the gyroscope sensitivity calibration algorithm to calculate the gyroscope y-axis sensitivity. See the gyroscope sensitivity calibration section for more information. 18.3.18 Gyroscope sampled z-axis at -200 dps Address: 0x0011 Value: Q16.0 signed fixed point value between −32,768 and +32,767. Description: Sampled gyroscope z-axis output in lsb when rotating at −200◦/s, obtained through the execution of the sample gyroscope axis at 200 dps command. This value is used by the gyroscope sensitivity calibration algorithm to calculate the gyroscope z-axis sensitivity. See the gyroscope sensitivity calibration section for more information. 18.3.19 Gyroscope x-axis bias at 25 degrees Celsius Address: 0x0012 Value: Q13.3 signed fixed point value between −4096 and +4095.875. Description: Calibrated bias of the gyroscope x-axis at 25 ◦C in lsb. See parameter bgxin the gyroscope section. The value of the parameter can be accurately evaluated through calibration using the Calculate gyroscope bias parameters command. See the gyroscope bias calibration section for more information. 46 18.3.20 Gyroscope y-axis bias at 25 degrees Celsius Address: 0x0013 Value: Q13.3 signed fixed point value between −4096 and +4095.875. Description: Calibrated bias of the gyroscope y-axis at 25 ◦C in lsb. See parameter bgyin the gyroscope section. The value of the parameter can be accurately evaluated through calibration using the Calculate gyroscope bias parameters command. See the gyroscope bias calibration section for more information. 18.3.21 Gyroscope z-axis bias at 25 degrees Celsius Address: 0x0014 Value: Q13.3 signed fixed point value between −4096 and +4095.875. Description: Calibrated bias of the gyroscope z-axis at 25 ◦C in lsb. See parameter bgzin the gyroscope section. The value of the parameter can be accurately evaluated through calibration using the Calculate gyroscope bias parameters command. See the gyroscope bias calibration section for more information. 18.3.22 Gyroscope x-axis bias temperature sensitivity Address: 0x0015 Value: Q5.11 signed fixed point value between −16 and +15.99951. Description: Calibrated bias temperature sensitivity of the gyroscope x-axis in lsb/◦C. See parameter fx in the gyroscope section. The value of the parameter can be accurately evaluated through calibration using the Calculate gyroscope bias parameters command. See the gyroscope bias calibration section for more information. 18.3.23 Gyroscope y-axis bias temperature sensitivity Address: 0x0016 Value: Q5.11 signed fixed point value between −16 and +15.99951. Description: Calibrated bias temperature sensitivity of the gyroscope y-axis in lsb/◦C. See parameter fy in the gyroscope section. The value of the parameter can be accurately evaluated through calibration using the Calculate gyroscope bias parameters command. See the gyroscope bias calibration section for more information. 18.3.24 Gyroscope z-axis bias temperature sensitivity Address: 0x0017 Value: Q5.11 signed fixed point value between −16 and +15.99951. Description: Calibrated bias temperature sensitivity of the gyroscope z-axis in lsb/◦C. See parameter fz in the gyroscope section. The value of the parameter can be accurately evaluated through calibration using the Calculate gyroscope bias parameters command. See the gyroscope bias calibration section for more information. 18.3.25 Gyroscope sample 1 - Temperature Address: 0x0018 Value: Q8.8 signed fixed point value between −128 and +127.9961. Description: Sampled temperature of gyroscope in ◦C, obtained through the execution of the Sample gyroscope bias at temperature 1 command. This value is used by the gyroscope bias calibration algorithm in the calculation the gyroscope bias parameters. See the gyroscope bias calibration section for more information. 47 18.3.26 Gyroscope sample 1 - x-axis bias Address: 0x0019 Value: Q13.3 signed fixed point value between −4096 and +4095.875. Description: Sampled gyroscope x-axis output in lsb, obtained through the execution of the Sample gyroscope bias at temperature 1 command. This value is used by the gyroscope bias calibration algorithm in the calculation the gyroscope bias parameters. See the gyroscope bias calibration section for more information. 18.3.27 Gyroscope sample 1 - y-axis bias Address: 0x001A Value: Q13.3 signed fixed point value between −4096 and +4095.875. Description: Sampled gyroscope y-axis output in lsb, obtained through the execution of the Sample gyroscope bias at temperature 1 command. This value is used by the gyroscope bias calibration algorithm in the calculation the gyroscope bias parameters. See the gyroscope bias calibration section for more information. 18.3.28 Gyroscope sample 1 - z-axis bias Address: 0x001B Value: Q13.3 signed fixed point value between −4096 and +4095.875. Description: Sampled gyroscope z-axis output in lsb, obtained through the execution of the Sample gyroscope bias at temperature 1 command. This value is used by the gyroscope bias calibration algorithm in the calculation the gyroscope bias parameters. See the gyroscope bias calibration section for more information. 18.3.29 Gyroscope sample 2 - Temperature Address: 0x001C Value: Q8.8 signed fixed point value between −128 and +127.9961. Description: Sampled temperature of gyroscope in ◦C, obtained through the execution of the Sample gyroscope bias at temperature 2 command. This value is used by the gyroscope bias calibration algorithm in the calculation the gyroscope bias parameters. See the gyroscope bias calibration section for more information. 18.3.30 Gyroscope sample 2 - x-axis bias Address: 0x001D Value: Q13.3 signed fixed point value between −4096 and +4095.875. Description: Sampled gyroscope x-axis output in lsb, obtained through the execution of the Sample gyroscope bias at temperature 2 command. This value is used by the gyroscope bias calibration algorithm in the calculation the gyroscope bias parameters. See the gyroscope bias calibration section for more information. 18.3.31 Gyroscope sample 2 - y-axis bias Address: 0x001E Value: Q13.3 signed fixed point value between −4096 and +4095.875. Description: Sampled gyroscope y-axis output in lsb, obtained through the execution of the Sample gyroscope bias at temperature 2 command. This value is used by the gyroscope bias calibration algorithm in the calculation the gyroscope bias parameters. See the gyroscope bias calibration section for more information. 48 18.3.32 Gyroscope sample 2 - z-axis bias Address: 0x001F Value: Q13.3 signed fixed point value between −4096 and +4095.875. Description: Sampled gyroscope y-axis output in lsb, obtained through the execution of the Sample gyroscope bias at temperature 2 command. This value is used by the gyroscope bias calibration algorithm in the calculation the gyroscope bias parameters. See the gyroscope bias calibration section for more information. 18.3.33 Accelerometer full-scale Address: 0x0020 Value: 0x0000 =±2 g 0x0001 =±4 g 0x0002 =±8 g Description: Full-scale range of the accelerometer. Each full-scale range will have different associated sensitivity and bias values. The accelerometer must therefore be recalibrated when the full-scale range is changed. See the accelerometer calibration section for more information. 18.3.34 Accelerometer x-axis sensitivity Address: 0x0021 Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Calibrated sensitivity of the accelerometer x-axis in lsb/g. See parameter saxin the accelerometer section. The value of the parameter can be accurately evaluated through calibration using the calculate accelerometer bias and sensitivitycommand. See the accelerometer calibration section for more information. 18.3.35 Accelerometer y-axis sensitivity Address: 0x0022 Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Calibrated sensitivity of the accelerometer y-axis in lsb/g. See parameter sayin the accelerometer section. The value of the parameter can be accurately evaluated through calibration using the calculate accelerometer bias and sensitivitycommand. See the accelerometer calibration section for more information. 18.3.36 Accelerometer z-axis sensitivity Address: 0x0023 Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Calibrated sensitivity of the accelerometer z-axis in lsb/g. See parameter sazin the accelerometer section. The value of the parameter can be accurately evaluated through calibration using the calculate accelerometer bias and sensitivitycommand. See the accelerometer calibration section for more information. 18.3.37 Accelerometer x-axis bias Address: 0x0024 Value: Q8.8 signed fixed point value between −128 and +127.9961. Description: Calibrated bias of the accelerometer x-axis in lsb. See parameter baxin the accelerometer section. The value of the parameter can be accurately evaluated through calibration using the calculate accelerometer bias and sensitivitycommand. See the accelerometer calibration section for more information. 49 18.3.38 Accelerometer y-axis bias Address: 0x0025 Value: Q8.8 signed fixed point value between −128 and +127.9961. Description: Calibrated bias of the accelerometer y-axis in lsb. See parameter bayin the accelerometer section. The value of the parameter can be accurately evaluated through calibration using the calculate accelerometer bias and sensitivitycommand. See the accelerometer calibration section for more information. 18.3.39 Accelerometer z-axis bias Address: 0x0026 Value: Q8.8 signed fixed point value between −128 and +127.9961. Description: Calibrated bias of the accelerometer z-axis in lsb. See parameter bazin the accelerometer section. The value of the parameter can be accurately evaluated through calibration using the calculate accelerometer bias and sensitivitycommand. See the accelerometer calibration section for more information. 18.3.40 Accelerometer sampled x-axis at +1 g Address: 0x0027 Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Sampled accelerometer x-axis output in lsb when orientated to measure +1g, obtained through the execution of the sample accelerometer axis at 1 g command. This value is used by the accelerometer calibration algorithm to calculate the value of the accelerometer x-axis sensitivity and accelerometer x-axis bias. See the accelerometer calibration section for more information. 18.3.41 Accelerometer sampled y-axis at +1 g Address: 0x0028 Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Sampled accelerometer y-axis output in lsb when orientated to measure +1g, obtained through the execution of the sample accelerometer axis at 1 g command. This value is used by the accelerometer calibration algorithm to calculate the value of the accelerometer y-axis sensitivity and accelerometer y-axis bias. See the accelerometer calibration section for more information. 18.3.42 Accelerometer sampled z-axis at +1 g Address: 0x0029 Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Sampled accelerometer z-axis output in lsb when orientated to measure +1g, obtained through the execution of the sample accelerometer axis at 1 g command. This value is used by the accelerometer calibration algorithm to calculate the value of the accelerometer z-axis sensitivity and accelerometer z-axis bias. See the accelerometer calibration section for more information. 18.3.43 Accelerometer sampled x-axis at -1 g Address: 0x002A Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Sampled accelerometer x-axis output in lsb when orientated to measure -1g, obtained through the execution of the sample accelerometer axis at 1 g command. This value is used by the accelerometer calibration algorithm to calculate the value of the accelerometer x-axis sensitivity and accelerometer x-axis bias. See the accelerometer calibration section for more information. 50 18.3.44 Accelerometer sampled y-axis at -1 g Address: 0x002B Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Sampled accelerometer y-axis output in lsb when orientated to measure -1g, obtained through the execution of the sample accelerometer axis at 1 g command. This value is used by the accelerometer calibration algorithm to calculate the value of the accelerometer y-axis sensitivity and accelerometer y-axis bias. See the accelerometer calibration section for more information. 18.3.45 Accelerometer sampled z-axis at -1 g Address: 0x002C Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Sampled accelerometer z-axis output in lsb when orientated to measure -1g, obtained through the execution of the sample accelerometer axis at 1 g command. This value is used by the accelerometer calibration algorithm to calculate the value of the accelerometer z-axis sensitivity and accelerometer z-axis bias. See the accelerometer calibration section for more information. 18.3.46 Magnetometer full-scale Address: 0x002D Value: 0x0000 =±1.3 G 0x0001 =±1.9 G 0x0002 =±2.5 G 0x0003 =±4.0 G 0x0004 =±4.7 G 0x0005 =±5.6 G 0x0006 =±8.1 G Description: Full-scale range of the magnetometer. Each full-scale range will have different associated sensitivity and bias values. The magnetometer therefore must be recalibrated when the full-scale range is changed. See the magnetometer bias and sensitivity calibration section for more information. 18.3.47 Magnetometer x-axis sensitivity Address: 0x002E Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Calibrated sensitivity of the magnetometer x-axis in lsb/G. See parameter smxin the magnetometer section. The value of the parameter can be accurately evaluated through calibration using the Measure magnetometer bias and sensitivity command. See the magnetometer bias and sensitivity calibration section for more information. 18.3.48 Magnetometer y-axis sensitivity Address: 0x002F Value: Q12.4 signed fixed point value between −2048 and +2047.938. Description: Calibrated sensitivity of the magnetometer y-axis in lsb/G. See parameter smyin the magnetometer section. The value of the parameter can be accurately evaluated through calibration using the Measure magnetometer bias and sensitivity command. See the magnetometer bias and sensitivity calibration section for more information. 51 18.3.81 Analogue input data output rate Address: 0x0050 Value: 0x0000 = On change only 0x0001 = 1 Hz 0x0002 = 2 Hz 0x0003 = 4 Hz 0x0004 = 8 Hz 0x0005 = 16 Hz 0x0006 = 32 Hz 0x0007 = 64 Hz 0x0008 = 128 Hz 0x0009 = 256 Hz 0x000A = 512 Hz Description: Output rate of the analogue input packets. Data rates can be reduced or disabled to reduce power consumption. See the analogue input section for more information. 18.3.82 Analogue input sensitivity Address: 0x0051 Value: Q12.4 signed fixed point value between −2,048 and +2047.938. Description: Calibrated sensitivity of the analogue input ADC in lsb/V. The typical value is 1241.188 lsb/V. See the analogue input section for more information. 18.3.83 Analogue input bias Address: 0x0052 Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the battery ADC in lsb. The typical value is 0 lsb. See the analogue input section for more information. 18.3.84 PWM frequency Address: 0x0053 Value: 3 to 65535 Description: Frequency of the PWM output in Hz. See the PWM section for more information. 18.3.85 ADXL345 bus data mode Address: 0x0054 Value: 0x0000 = Raw ADC results 0x0001 = Calibrated measurements Description: Data output mode of ADXL345 bus. 58 18.3.86 ADXL345 bus data output rate Address: 0x0055 Value: 0x0000 = On change only 0x0001 = 1 Hz 0x0002 = 2 Hz 0x0003 = 4 Hz 0x0004 = 8 Hz 0x0005 = 16 Hz 0x0006 = 32 Hz 0x0007 = 64 Hz 0x0008 = 128 Hz 0x0009 = 256 Hz 0x000A = 512 Hz Description: Output rate of the ADXL345 bus data packets. Data rates can be reduced or disabled to reduce power consumption. 18.3.87 ADXL345 A x-axis sensitivity Address: 0x0056 Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 A x-axis in lsb/g. The typical value is 256 lsb/g. The typical value is 256 lsb/V. 18.3.88 ADXL345 A y-axis sensitivity Address: 0x0057 Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 A y-axis in lsb/g. The typical value is 256 lsb/g. 18.3.89 ADXL345 A z-axis sensitivity Address: 0x0058 Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 A z-axis in lsb/g. The typical value is 256 lsb/g. 18.3.90 ADXL345 A x-axis bias Address: 0x0059 Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 A x-axis in lsb. The typical value is 0 lsb. 18.3.91 ADXL345 A y-axis bias Address: 0x005A Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 A y-axis in lsb. The typical value is 0 lsb. 18.3.92 ADXL345 A z-axis bias Address: 0x005B Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 A z-axis in lsb. The typical value is 0 lsb. 59 18.3.93 ADXL345 B x-axis sensitivity Address: 0x005C Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 B x-axis in lsb/g. The typical value is 256 lsb/g. 18.3.94 ADXL345 B y-axis sensitivity Address: 0x005D Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 B y-axis in lsb/g. The typical value is 256 lsb/g. 18.3.95 ADXL345 B z-axis sensitivity Address: 0x005E Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 B z-axis in lsb/g. The typical value is 256 lsb/g. 18.3.96 ADXL345 B x-axis bias Address: 0x005F Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 B x-axis in lsb. The typical value is 0 lsb. 18.3.97 ADXL345 B y-axis bias Address: 0x0060 Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 B y-axis in lsb. The typical value is 0 lsb. 18.3.98 ADXL345 B z-axis bias Address: 0x0061 Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 B z-axis in lsb. The typical value is 0 lsb. 18.3.99 ADXL345 C x-axis sensitivity Address: 0x0062 Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 C x-axis in lsb/g. The typical value is 256 lsb/g. 18.3.100 ADXL345 C y-axis sensitivity Address: 0x0063 Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 C y-axis in lsb/g. The typical value is 256 lsb/g. 18.3.101 ADXL345 C z-axis sensitivity Address: 0x0064 Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 C z-axis in lsb/g. The typical value is 256 lsb/g. 18.3.102 ADXL345 C x-axis bias Address: 0x0065 Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 C x-axis in lsb. The typical value is 0 lsb. 60 18.3.103 ADXL345 C y-axis bias Address: 0x0066 Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 C y-axis in lsb. The typical value is 0 lsb. 18.3.104 ADXL345 C z-axis bias Address: 0x0067 Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 C z-axis in lsb. The typical value is 0 lsb. 18.3.105 ADXL345 D x-axis sensitivity Address: 0x0068 Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 D x-axis in lsb/g. The typical value is 256 lsb/g. 18.3.106 ADXL345 D y-axis sensitivity Address: 0x0069 Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 D y-axis in lsb/g. The typical value is 256 lsb/g. 18.3.107 ADXL345 D z-axis sensitivity Address: 0x006A Value: Q10.6 signed fixed point value between −512 and +511.9844. Description: Calibrated sensitivity of the ADXL345 D z-axis in lsb/g. The typical value is 256 lsb/g. 18.3.108 ADXL345 D x-axis bias Address: 0x006B Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 D x-axis in lsb. The typical value is 0 lsb. 18.3.109 ADXL345 D y-axis bias Address: 0x006C Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 D y-axis in lsb. The typical value is 0 lsb. 18.3.110 ADXL345 D z-axis bias Address: 0x006D Value: Q8.8 signed fixed point value between −256 and +127.9961. Description: Calibrated bias of the ADXL345 D z-axis in lsb. The typical value is 0 lsb. 61 18.3.111 UART baud rate Address: 0x006E Value: 0x0000 = 2400 baud 0x0001 = 4800 baud 0x0002 = 7200 baud 0x0003 = 9600 baud 0x0004 = 14400 baud 0x0005 = 19200 baud 0x0006 = 38400 baud 0x0007 = 57600 baud 0x0008 = 115200 baud 0x0009 = 230400 baud 0x000A = 460800 baud 0x000B = 921600 baud Description: Baud rate of the auxiliary port UART. See the UART section for more information. 18.3.112 UART hardware flow control Address: 0x006F Value: 0x0000 = Disabled 0x0001 = Enabled Description: Hardware flow control enable/disable of the auxiliary port UART. See the UART section for more information. 62 ETSEIAT Grau en Enginyeria en Tecnologies Industrials Design of a bench to allocate accelerometers and gyroscopes on a sailplane Annex D: MSR255 Datasheet Author: Oscar Castro Ruiz Director: Ricardo Villar Co-director: Rafael Weyler [12-06-2015] MSR 255 Data Logger Robust multi-talent with LCD screen With up to five different sensors, four additional analogue inputs and an easy to read LCD screen the compact MSR 255 offers maximum possible flexibility and user-friendliness. The measuring tasks undertaken by the user define the way in which the MSR 255 is configured: There is a choice of temperature, humidity, air pressure and light sensors (fitted internally within the case or externally on a cable) together with a sensor for measuring acceleration in all three co-ordinate axes. Acceleration values can be measured at 3200 Hz and saved at a frequency of approx. 50 Hz following digital filtration. In addition, the voltage of four further external analogue channels or sensors can also be recorded. The analogue inputs feature an alarm output, multiple output switching power supply and an input for starting and stopping data recording. The memory capacity of the MSR 255 is over 2 million measurement parameters. Thanks to its high-capacity lithium polymer battery the data logger is ideal for longterm data acquisition applications. The 4-row backlit LCD display has four individually configurable views. All acquired data can be quickly transferred to a PC or laptop via the USB interface. Technical data Housing: Size & weight: Anodised aluminium industrial case (standard IP60, optional IP67 protection class), top-hat rail snapper (TS 35) 78 x 62 x 38 mm, approx. 222 g Memory capacity: Over 2 000 000 measurement parameters. Operation: Display: LED: Two keys for selecting functions and controlling data recording Four row LCD matrix display 3 colour LED to indicate data recording, alarm and charge condition Integrated sensors: Measurement rate (MR): Storage rate (SR): Selection of different sensors for temperature, relative humidity, pressure, light and 3-axis acceleration/position 1 /s to every 12 h (acceleration up to 3200 /s) 1 /s to every 12 h (acceleration up to 50 /s) Power supply: PC software: Rechargeable lithium polymer battery 2300 mAh Free Setup, Reader, Viewer- & Online software (Windows XP / Vista / 7 / 8) Interface: USB (Mini-B) Operating conditions: Storage conditions: •Temperature-20…+65°C •Temperatur+5…+45°C(idealstorageconditionforthe battery) •10…95%relativehumidity,non-condensing Standards: The MSR 255 complies with EU-Directives RoHS/WEEE MSR 255 with ext. sensors Measurement parameters for the sensors (internal and external) Your MSR 255 data logger can be fitted with up to five different sensors. If required, you may select from the following external sensors in place of the corresponding internal ones: temperature, relative humidity, air pressure and light. The available cable lengths are: 0.15 m, 0.4 m, 1.0 m and 1.6 m. Measured parameters Working range Accuracy Measurement/ storage rate Temperature int.:-20…+65°C±0.5°C(-10…+65°C) 1 /s to every 12 h ext.:-55…+125°C±0.5°C(-10…+65°C) ±2°C(-55…+125°C) Relative humidity with integrated temperature 0…100% rel. humidity -20…+65°C ±2%rel.humidity (10…85%,0…+40°C) ±4%rel.humidity (85…95%,0…+40°C) 1 /s to every 12 h Air pressure absolute, with integrated temperature 0…2000mbar absolute -20…+65°C ±2.5 mbar (750…1100mbar absolute,+25°C) 1 /s to every 12 h optional: 0…14barabsolute -20…+65°C ±50mbar(1…10bar absolute,+25°C) 1 /s to every 12 h 3-axis-acceleration ±15 g ±0.15g(+25°C) Acceleration: 50/s (3,200/s) Position: 1 /s up to every 12 h Light 0…65000lx max. sensitivity at 500 nm 1 /s to every 12 h Additional analogue inputs for connecting third-party sensors It is possible to expand the range of possible applications for which your MSR 255 can be used by specifying four analogue inputs. These additional inputs allow external sensors for a wide range of measuring tasks to be connected. If required, these third-party sensors can be powered by the logger's internal battery. The power can be automatically turned on before measurements take place with a pre-settable lead time. This allows any necessary warm-up periods for the sensors to be taken into consideration . Analogue Inputs Technical data Including an alarm output, multiple output switching power supply and an input for starting and stopping data recording. 4 analogue inputs with freely selectableinputconfiguration:0…20mA; 4…20mA;0…3.0V;0.5…4.5V; 0…5.0V;1.0…6.0V;0…10.0V; 0…12.0V;0…24.0V Resolution: 12 Bit Measurement/storage rate: 1 /s to every 12 h Its flexibility makes the autonomous MSR 255 data logger ideally suited for the most diverse documentation and monitoring applications in industry and science. Configure your ideal MSR 255 today – We will be pleased to provide you with prices and terms of delivery! Distributor: MSR Electronics GmbH Mettlenstrasse 6a CH-8472 Seuzach Switzerland Tel. +41523162555 Fax+41523163521 [email protected] www.msr.ch 07.14 External temperature sensor External humidity sensor External light sensor External air pressure sensor ø19 55 Options: ø5 ~23 ø6 ~23 ø5 ~23