Commit Graph
100 Commits
Author SHA1 Message Date
Oleg Kalachev 7516279132 Add requirements.txt for tools 2024-05-10 22:28:42 +03:00
Oleg Kalachev a383c83a29 Minor update to .editorconfig 2024-05-02 21:22:13 +03:00
Oleg Kalachev 6392c4a97a Update dataflow diagram to reflect newly introduced gyro variable 2024-05-01 02:35:30 +03:00
Oleg Kalachev cfb2e60310 Add correct rules to yml files editor config 2024-05-01 02:33:44 +03:00
Oleg Kalachev 41a9a95747 Transfer gyro low pass filter to estimate.ino
Separate raw gyro data and filtered rates to different variables
2024-04-20 14:52:01 +03:00
Oleg Kalachev 24e8569905 Make Vector methods arguments more consistent 2024-04-20 10:57:32 +03:00
Oleg Kalachev fb80b899e0 Refine Gazebo installation instructions for macOS 2024-04-09 02:45:21 +03:00
Oleg Kalachev d095b81d7e Print out loop frequency on imu command 2024-04-02 22:28:02 +03:00
Oleg Kalachev 28a6bf2230 Add info about motors testing commands to intro message 2024-03-30 18:23:42 +03:00
Oleg Kalachev fff7262d1b Minor fix for SBUS dummy for simulator 2024-03-23 09:20:08 +03:00
Oleg Kalachev 646fa46f6b Use FlixPeriph library for SBUS 2024-03-17 02:29:37 +03:00
Oleg Kalachev f782f647cb Correctly restore IMU settings after accel calibration 2024-03-15 13:26:59 +03:00
Oleg Kalachev 32f29dc1a4 Use default SPI CS pin for IMU 2024-03-15 13:14:28 +03:00
Oleg Kalachev 2cf1c7abb3 Use FlixPeriph library for IMU, implement own IMU calibration 2024-03-15 10:38:48 +03:00
Oleg Kalachev d752cce0cc Fix accel calibration upside down wait time 2024-03-12 00:36:53 +03:00
Oleg Kalachev aeec8e34eb Add auto-center throttle setting notice to QGC usage documentation 2024-03-03 21:08:43 +03:00
Oleg Kalachev 34a81536c2 Fix reverse motors pwm 2024-03-02 15:37:38 +03:00
Oleg Kalachev 1c9b10a674 Use default recommended chip-select pin (GPIO5) for SPI
Update link to the schematics #3 to the most recent version
2024-02-24 15:28:41 +03:00
Oleg Kalachev ab2f99ab59 Simplify making user modes for control, add USER mode 2024-02-22 03:09:12 +03:00
Oleg Kalachev 5b6ef9c50e Add warning about shaft diameter for the motors 2024-02-21 18:24:35 +03:00
Oleg Kalachev 5ec6b5e665 Make fromEulerZYX accept Vector instead of x, y, z 2024-02-20 04:51:59 +03:00
Oleg Kalachev 85182ac2b8 Use more correct implementation of toEulerZYX fixing some yaw issues
We actually need to use Tait–Bryan Z-Y-X angles, not classic Euler's
2024-02-20 04:47:13 +03:00
Oleg Kalachev 455729fdb4 Improve log download: remove empty records, sort by timestamp
To make Plotjuggler not to warn about unsorted records everytime
2024-02-18 01:23:33 +03:00
Oleg Kalachev 4eec63adfa Add info about input group for joystick usage in building instructions 2024-02-17 22:17:27 +03:00
Oleg Kalachev e0db3bee38 Read mode stick using axis read in simulation 2024-02-16 01:13:32 +03:00
Oleg Kalachev bf803cf345 Display MAVLink remote port in simulator 2024-02-10 14:12:09 +03:00
Oleg Kalachev 33319db1fa Make rates LPF cut-off frequency equal to 40 Hz 2024-02-07 10:49:31 +03:00
Oleg Kalachev ba6e63b50b Correctly set output parameters of simulated SBUS::read, minor name fix 2024-02-06 21:02:20 +03:00
Oleg Kalachev 410fccf015 Fix vector, quaternion, pid and lpf libraries curly braces code style 2024-02-06 13:50:56 +03:00
Oleg Kalachev 31d382dd86 Simplify motors pwm calculation using unified value for all motors 2024-02-06 10:49:48 +03:00
Oleg Kalachev 0661aecccf Remove unneeded INVERT_SERIAL define 2024-02-04 14:42:57 +03:00
Oleg Kalachev 0f83e8ed80 Add info on how to control the simulated drone to build instructions 2024-01-31 17:20:59 +03:00
Oleg Kalachev f718af7f0e Support MAVLink usage in simulation 2024-01-31 12:10:18 +03:00
Oleg Kalachev 4850b95029 Add a readme to gazebo directory 2024-01-31 12:07:37 +03:00
Oleg Kalachev 2694f68b87 Add yaw dead zone in mavlink control 2024-01-31 12:05:49 +03:00
Oleg Kalachev 033e74a375 Minor code cleanups 2024-01-31 12:05:25 +03:00
Oleg Kalachev a24f039f1d Fix RC_CHANNELS_SCALED inactive channel values
They should be INT16_MAX not UINT16_MAX
2024-01-31 12:04:44 +03:00
Oleg Kalachev 6b52ad562b Minor const clarification 2024-01-31 12:00:23 +03:00
Oleg Kalachev 69cfc9e5fa Utilize internal ESP32 UART invertor for SBUS 2024-01-26 13:46:13 +03:00
Oleg Kalachev 1b54b3fa25 Enable macOS build
https://github.com/osrf/homebrew-simulation/pull/2526#issuecomment-1904384070
2024-01-26 13:16:17 +03:00
Oleg Kalachev f794da916d Disable macos build for now as it takes too long to execute 2024-01-19 05:29:52 +03:00
Oleg Kalachev ed6d09061b Rename RC_CHANNEL_AUX to RC_CHANNEL_ARMED 2024-01-19 05:19:41 +03:00
Oleg Kalachev 26a028ff66 Use only STAB mode by default 2024-01-19 05:16:44 +03:00
Oleg Kalachev 2d365dcffe Minor fixes 2024-01-19 05:14:12 +03:00
Oleg Kalachev c22961e5ff Don't calibrate gyro on start since MPU9250 library does that on begin 2024-01-19 05:05:49 +03:00
Oleg Kalachev 9ad718cb85 Fix macOS build 2024-01-19 05:04:40 +03:00
Oleg Kalachev 172f6b173a MAVLink input support (control using mobile phone) 2024-01-17 15:39:40 +03:00
Oleg Kalachev 8e629e3eea Minor cleanups 2024-01-17 15:20:38 +03:00
Oleg Kalachev 482bb8ed71 Disable ESP32 reset on low voltage 2024-01-17 15:18:11 +03:00
Oleg Kalachev 4ec6ff3f37 Update main schematics diagram 2024-01-14 17:07:49 +03:00
Oleg Kalachev 9ed41e50a1 Fix actuator_output mavlink message generation 2024-01-13 22:53:30 +03:00
Oleg Kalachev 344835cba8 Add firmware overview article 2024-01-13 14:08:02 +03:00
Oleg Kalachev 654badd097 Fix macos simulator build 2024-01-12 18:34:05 +03:00
Oleg Kalachev a8cd72e654 Add dataflow diagram to images 2024-01-12 00:44:01 +03:00
Oleg Kalachev f4aaf0f4f3 Use radians macro, minor change 2024-01-12 00:43:52 +03:00
Oleg Kalachev 1ed05a94dd Minor code cleanups 2024-01-08 22:33:11 +03:00
Oleg Kalachev e1e747969b Add .gitattributes so linguist would detect languages correctly 2024-01-06 14:41:24 +03:00
Oleg Kalachev 48ea797a47 Make simulator read RC through real drone code 2024-01-06 00:09:29 +03:00
Oleg Kalachev 476f24f774 Clarify rates control code 2024-01-06 00:08:30 +03:00
Oleg Kalachev 7a62229125 Minor cleanups 2024-01-05 15:11:07 +03:00
Oleg Kalachev e7864b1e55 #2 Use official MPU9250 library 1.0.2
The release was fixed https://github.com/bolderflight/invensense-imu/issues/123
2024-01-05 14:25:19 +03:00
Oleg Kalachev f72745a2e7 Add a link to full circuit diagram variant to readme #3 2024-01-04 23:32:17 +03:00
Oleg Kalachev 317ecc95cc Update libraries index before installing libraries 2024-01-04 19:35:55 +03:00
Oleg Kalachev d3700d5784 Add note to readme that SBUS inverter is actually not needed 2024-01-04 18:14:13 +03:00
Oleg Kalachev d84ed99996 Loose port detection wildcard to catch both CP2102 and CP2104 USB-UART bridges 2024-01-04 15:49:43 +03:00
Oleg Kalachev 82f3ab563a #1 - use MAVLink Arduino library 2024-01-04 12:57:15 +03:00
Oleg Kalachev 2fbebe102e Define ESP32 Dev Module LED pin 2024-01-03 16:09:43 +03:00
Oleg Kalachev fe7c06666f Enchase building instructions for Arduino IDE 2024-01-03 15:36:16 +03:00
Oleg Kalachev f520b57abe Implement RC calibration, common for the real drone and the simulation 2024-01-02 11:54:09 +03:00
Oleg Kalachev 78f3f6e3b3 More simulation code minor updates 2023-12-29 19:10:37 +03:00
Oleg Kalachev 46ba00fca7 Add forgotten file 2023-12-29 18:56:32 +03:00
Oleg Kalachev d2296fea76 Change C++ code style: put curly brace on the same line 2023-12-29 18:56:25 +03:00
Oleg Kalachev 645b148564 Cleanup simulation code, remove debug model showing current attitude estimation 2023-12-29 18:45:19 +03:00
Oleg Kalachev 3207fdb43c Minor changes 2023-12-29 18:43:34 +03:00
Oleg Kalachev c58a16e4df More clear file name for simulation plugin, cleanup in CMakeLists 2023-12-29 13:33:03 +03:00
Oleg Kalachev adeea474c6 Some updates to build instructions 2023-12-28 13:25:51 +03:00
Oleg Kalachev fc006d43e2 Fix cmake warning 2023-12-22 02:35:28 +03:00
Oleg Kalachev 776967038c Remove unused make target 2023-12-21 00:43:02 +03:00
Oleg Kalachev 93bfc5d258 Fix macos build 2023-12-20 12:30:53 +03:00
Oleg Kalachev d73cfe0c59 Update readme 2023-12-20 09:58:25 +03:00
Oleg Kalachev 343935f98c Minor fixes 2023-12-19 22:00:30 +03:00
Oleg Kalachev 886e592a20 Enable building simulator for macOS on push 2023-12-19 13:21:25 +03:00
Oleg Kalachev b278d7cfc1 Add introduction video to readme 2023-12-19 13:12:05 +03:00
Oleg Kalachev 189eac95ef Enable gyro calibration on the start 2023-12-19 11:36:27 +03:00
Oleg Kalachev fde9c1cf36 Minor changes and cleanups 2023-12-19 05:25:57 +03:00
Oleg Kalachev 77dd02dbeb Make components table smaller, fixes 2023-12-19 05:13:15 +03:00
Oleg Kalachev c3cdb58070 Remove non-existent file include 2023-12-19 05:11:22 +03:00
Oleg Kalachev ab43ebf7b6 Update readme, add building instructions 2023-12-19 05:09:48 +03:00
Oleg Kalachev a174d5cd7d Headers cleanups 2023-12-19 05:06:19 +03:00
Oleg Kalachev d3e7291197 Guard for angleBetweenVectors function to ensure it doesn't return NaN 2023-12-19 04:58:20 +03:00
Oleg Kalachev fcd695fdd7 Apply LPF to Gazebo's accel data to remove collision detector glitches, minor cleanups 2023-12-19 04:49:36 +03:00
Oleg Kalachev 57e83040b8 Apply accelerometer in estimation only when we're landed and stable
Accelerometer gives only motors specific force in flight, which makes
it useless to determine the current vertial
2023-12-19 04:46:59 +03:00
Oleg Kalachev 415f0e9ad5 Use model name as topics namespace in simulation 2023-12-15 10:03:07 +03:00
Oleg Kalachev a9bcec2fa5 Main sdf cleanups, minor fix 2023-12-15 09:43:54 +03:00
Oleg Kalachev f118bca6d1 Correctly fill armed field in heartbeat mavlink message 2023-12-15 09:35:54 +03:00
Oleg Kalachev 32d69cb4a0 Main world file fixes and cleanups, temporarily remove the table 2023-12-15 09:35:09 +03:00
Oleg Kalachev d3e715ae53 Quaternion library cleanups and code style 2023-12-13 08:42:03 +03:00
Oleg Kalachev 997af183f0 Implement lacking vector division operator 2023-12-13 08:38:26 +03:00
Oleg Kalachev 2c21114540 Refactor control, remake controlManual to controlTorque 2023-12-13 08:33:35 +03:00
Oleg Kalachev 4fcf2109ce Simplify code using angularRatesBetweenVectors 2023-12-13 08:25:11 +03:00