資源簡介
基于Life Performance公司的姿態傳感器所編寫的Matlab實例。
可以實時讀取傳感器數據并進行姿態解算。

代碼片段和文件信息
classdef?lpms?????%?Lpms?class?to?interface?with?LpmsSensors
????%
????%?Known?Issues:
????%?-?Serial?Interrupt?routine?blocks?main?processing?thread
????%???when?transferring?at?data?rate?>?100Hz?
????%
????%?TODO:?
????%?-?Implement?16bit?data?parsing
????
????properties?(Constant)
????????PACKET_ADDRESS0?????=?0;
????????PACKET_ADDRESS1?????=?1;
????????PACKET_FUNCTION0????=?2;
????????PACKET_FUNCTION1????=?3;
????????PACKET_LENGTH0??????=?4;
????????PACKET_LENGTH1??????=?5;
????????PACKET_RAW_DATA?????=?6;
????????PACKET_LRC_CHECK0???=?7;
????????PACKET_LRC_CHECK1???=?8;
????????PACKET_END??????????=?9;
????????MAX_BUFFER?=?4096;
????????
????????%?Command?register
????????REPLY_ACK?????????????=?0;
????????REPLY_NACK????????????=?1;
????????GET_CONFIG????????????=?4;
????????GET_STATUS????????????=?5;
????????GOTO_COMMAND_MODE?????=?6;
????????GOTO_STREAM_MODE??????=?7;
????????GET_SENSOR_DATA???????=?9;
????????
????????GET_SERIAL_NUMBER?????=?90;
????????GET_DEVICE_NAME???????=?91;
????????GET_FIRMWARE_INFO?????=?92;
????????
????????%Configuration?register?contents
????????LPMS_GYR_AUTOCAL_ENABLED?=?bitshift(1?30);
????????LPMS_LPBUS_DATA_MODE_16BIT_ENABLED?=?bitshift(1?22);
????????LPMS_LINACC_OUTPUT_ENABLED?=?bitshift(1?21);
????????LPMS_DYNAMIC_COVAR_ENABLED?=?bitshift(1?20);
????????LPMS_ALTITUDE_OUTPUT_ENABLED?=?bitshift(1?19);
????????LPMS_QUAT_OUTPUT_ENABLED?=?bitshift(1?18);
????????LPMS_EULER_OUTPUT_ENABLED?=?bitshift(1?17);
????????LPMS_ANGULAR_VELOCITY_OUTPUT_ENABLED?=?bitshift(1?16);
????????LPMS_GYR_CALIBRA_ENABLED?=?bitshift(1?15);
????????LPMS_HEAVEMOTION_OUTPUT_ENABLED?=?bitshift(1?14);
????????LPMS_TEMPERATURE_OUTPUT_ENABLED?=?bitshift(1?13);
????????LPMS_GYR_RAW_OUTPUT_ENABLED?=?bitshift(1?12);
????????LPMS_ACC_RAW_OUTPUT_ENABLED?=?bitshift(1?11);
????????LPMS_MAG_RAW_OUTPUT_ENABLED?=?bitshift(1?10);
????????LPMS_PRESSURE_OUTPUT_ENABLED?=?bitshift(1?9);
????????LPMS_STREAM_FREQ_5HZ_ENABLED??????=?0;
????????LPMS_STREAM_FREQ_10HZ_ENABLED?????=?1;
????????LPMS_STREAM_FREQ_25HZ_ENABLED?????=?2;
????????LPMS_STREAM_FREQ_50HZ_ENABLED?????=?3;
????????LPMS_STREAM_FREQ_100HZ_ENABLED????=?4;
????????LPMS_STREAM_FREQ_200HZ_ENABLED????=?5;
????????LPMS_STREAM_FREQ_400HZ_ENABLED????=?6;
????????LPMS_STREAM_FREQ_MASK?????????????=?7;
????????
????????LPMS_STREAM_FREQ_5HZ?=?5;
????????LPMS_STREAM_FREQ_10HZ?=?10;
????????LPMS_STREAM_FREQ_25HZ?=?25;
????????LPMS_STREAM_FREQ_50HZ?=?50;
????????LPMS_STREAM_FREQ_100HZ?=?100;
????????LPMS_STREAM_FREQ_200HZ?=?200;
????????LPMS_STREAM_FREQ_400HZ?=?400;
????????
????????PARAMETER_SET_DELAY?=?0.01;
????????DATA_QUEUE_SIZE?=?64;
????end
???
????properties
????????%?serial
????????serConn;
????????isSensorConnected?=?false;
????????
????????%?define?the?properties?of?the?class?here?(like?fields?of?a?struct)
????????rxBuffer?=?uint8(zeros(1?lpms.MAX_BUFFER));
????????rawTxBuffer?=?uint8(zer
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????25477??2018-07-20?16:23??LPMS?MatLab實例\lpms.m
?????文件?????????904??2018-07-20?16:23??LPMS?MatLab實例\LpmsDataRecordingDemo.m
?????文件????????1099??2018-07-20?16:23??LPMS?MatLab實例\LpmsRealTimePlotDemo.m
評論
共有 條評論