Starlight220
816aa4e465
[wpilib] Add Pneumatics sim classes ( #4033 )
2022-05-22 07:21:40 -07:00
Tyler Veness
5aa67f56e6
[wpimath] Clean up math comments ( #4252 )
2022-05-20 15:16:56 -07:00
Dustin Spicuzza
99424ad562
[sim] Allow creating a PWMSim object from a PWMMotorController ( #4039 )
2022-05-06 08:44:59 -07:00
Peter Johnson
e767605e94
[wpimath] Add typedefs for common types
...
This makes complex code significantly easier to read.
frc::Vectord<Size> = Eigen::Vector<double, Size>
frc::Matrixd<Rows, Cols> = Eigen::Matrix<double, Rows, Cols>
2022-04-30 20:38:55 -07:00
Tyler Veness
9d20ab3024
[wpilib] Allow disabling ElevatorSim gravity ( #4145 )
...
Closes #4144 .
2022-04-24 07:19:18 -07:00
modelmat
42908126b9
[wpilib] Add DCMotorSim ( #3910 )
2022-01-21 20:42:06 -08:00
Tyler Veness
22c4da152e
[wpilib] Add GetRate() to ADIS classes ( #3864 )
...
The angular rate is treated somewhat like an angle during calibration,
but the datasheet says it's angular rate. The variables were renamed to
make this clearer.
2022-01-04 22:26:23 -08:00
Tyler Veness
a2510aaa0e
[wpilib] Make ADIS IMU classes unit-safe ( #3860 )
...
The gyro rate getters were removed since that data isn't available.
2022-01-03 20:00:53 -08:00
Tyler Veness
831052f118
[wpilib] Add simulation support to ADIS classes ( #3857 )
2022-01-03 11:44:12 -08:00
Oblarg
b8d019cdb4
[wpilib] Rename NormalizeWheelSpeeds to DesaturateWheelSpeeds ( #3791 )
2021-12-30 18:30:08 -08:00
Thad House
b156db400d
[hal, wpilib] Incorporate pneumatic control type into wpilibc/j ( #3728 )
2021-11-23 20:32:02 -08:00
Tyler Veness
181723e573
Replace .to<double>() and .template to<double>() with .value() ( #3667 )
...
It's a less verbose way to do the same thing.
2021-10-25 08:58:12 -07:00
Tyler Veness
4647d09b50
[docs] Fix Doxygen warnings, add CI docs lint job ( #3639 )
...
The CI docs lint build is configured to fail on Doxygen warnings.
2021-10-14 18:09:38 -07:00
Thad House
689e9ccfb5
[hal, wpilib] Add brownout voltage configuration ( #3632 )
2021-10-13 19:14:27 -07:00
Thad House
10f19e6fc3
[hal, wpilib] Add REV PneumaticsHub ( #3600 )
2021-10-10 20:04:50 -07:00
Tyler Veness
9359431bad
[wpimath] Clean up Eigen usage
...
* Replace Matrix<> with Vector<> where vectors are explicitly intended.
I found these via `rg "Eigen::Matrix<double, \w+, 1>"`.
* Pass all Eigen matrices by const reference. I found these via `rg
"\(Eigen"` on main (the initializer list constructors make more false
positives).
* Replace MakeMatrix() and operator<< usage with initializer list
constructors. I found these via `rg MakeMatrix` and `rg "<<"`
respectively.
* Deprecate MakeMatrix()
2021-09-17 12:12:19 -07:00
PJ Reiniger
2edd510ab7
[sim] Add sim wrappers for sensors that use SimDevice ( #3517 )
2021-08-20 23:19:59 -07:00
Thad House
10cc8b89c4
[hal] [wpilib] Add initial support for the REV PDH ( #3503 )
2021-08-14 11:44:56 -07:00
Starlight220
031962608b
[wpilib] Add PS4Controller, remove Hand from GenericHID/XboxController ( #3345 )
...
- GenericHID is now concrete, and has only getRawAxis/Button(int) functionality
- getXxx() has been moved into Joystick as that's the only place where it makes sense
- Hand (and therefore getXxx(Hand)) has been removed, replaced by specific getLeft/RightXxx() methods in XboxController and the new PS4Controller class
- C++ ::Button:: and ::Axis:: enums have been converted to identically-namespaced static constexpr ints
2021-08-14 10:00:46 -07:00
PJ Reiniger
94e0db7963
[wpilibc] Add more unit tests ( #3494 )
2021-08-05 19:04:51 -07:00
Thad House
1ac73a247e
[hal] Rename PowerDistributionPanel to PowerDistribution ( #3466 )
...
Makes HAL more generic for the PDP, to enable the Rev PDH in the future.
2021-08-04 20:31:17 -07:00
Tyler Veness
1daadb812f
[wpimath] Implement Dormand-Prince integration method ( #3476 )
...
Also refactored RKF45 implementation to match the new style, which is
easier to read.
The tests were switched from RKF45 to RKDP since it's more accurate.
2021-07-11 09:42:33 -05:00
Peter Johnson
362066a9b7
[wpilib] Deprecate getInstance() in favor of static functions ( #3440 )
...
Co-authored-by: Noam Zaks <imnoamzaks@gmail.com >
2021-06-15 23:06:03 -07:00
Thad House
0e702eb799
[hal] Add a unified PCM object ( #3331 )
2021-06-05 22:36:39 -07:00
Peter Johnson
cb0051ae60
[wpilibc] SimDeviceSim: use fmtlib ( #3389 )
...
Also clean up several sim classes to use the channel constructor.
2021-05-26 07:23:13 -07:00
Peter Johnson
a04d1b4f97
[wpilibc] DriverStation: Remove ReportError and ReportWarning
...
Change use cases to directly call FRC_ReportError.
2021-05-25 10:04:32 -07:00
Starlight220
ff52f207cc
[glass, wpilib] Rewrite Mechanism2d ( #3281 )
...
Substantially improves Mechanism2d by moving it to NetworkTables and adding
a robot API to create the mechanism elements, instead of requiring a JSON file.
Co-authored-by: Peter Johnson <johnson.peter@gmail.com >
2021-04-30 13:43:59 -07:00
Starlight220
d241bc81ae
[sim] Add DoubleSolenoidSim and SolenoidSim classes ( #3177 )
2021-02-16 18:03:57 -08:00
Starlight220
d447c7dc32
[sim] Add SimDeviceSim ctor overloads ( #3134 )
...
Better parallelism with SimDevice.create(), so teams don't have to mess with concatenating the index/channel themselves.
2021-02-12 22:17:13 -08:00
Matt
406d055f07
[wpilib] Fixup wouldHitLowerLimit in elevator and arm simulation classes. ( #3076 )
...
Closes #3050 .
2021-01-14 00:28:00 -08:00
Peter Johnson
9c3b51ca0f
[wpilib] Document simulation APIs ( #3079 )
...
- Remove sim checkstyle suppression
- Add [[nodiscard]] to C++ register callback functions
- Add a couple of missing sim functions
Co-authored-by: Peter Johnson <johnson.peter@gmail.com >
Co-authored-by: Starlight220 <yotamshlomi@gmail.com >
2021-01-11 21:55:45 -08:00
Dustin Spicuzza
64e72f7103
[wpilibc] Add missing function RoboRioSim::ResetData ( #3073 )
2021-01-10 22:50:25 -08:00
Matt
85a0bd43c2
[wpimath] Add RKF45 integration ( #3047 )
...
This is more stable than Runge-Kutta for systems with large elements in their A or B matrices.
Co-authored-by: Tyler Veness <calcmogul@gmail.com >
2021-01-06 21:40:25 -08:00
Prateek Machiraju
1e9c79c587
[sim] Use plant output to retrieve simulated position ( #3043 )
...
Using the plant output means that measurement noise can be incorporated.
SingleJointedArmSim (in C++ and Java) and ElevatorSim (in C++) used the
state instead of the measurement.
Closes #3042
2021-01-05 17:55:44 -08:00
PJ Reiniger
66782e2317
[sim] Create Left/Right drivetrain current accessors ( #3001 )
2020-12-29 20:46:51 -08:00
Peter Johnson
aee4603269
clang-tidy: modernize-pass-by-value
2020-12-29 14:26:19 -08:00
Peter Johnson
6131f4e32b
clang-tidy: modernize-concat-nested-namespaces (NFC)
2020-12-29 14:26:19 -08:00
Matt
9005cd59e5
[wpilib] Clamp input voltage in sim classes ( #2955 )
2020-12-28 13:03:31 -08:00
Peter Johnson
2aed432b4b
Add braces to C++ single-line loops and conditionals (NFC) ( #2973 )
...
This makes code easier to read and more consistent between C++ and Java.
Also update clang-format settings to always add a line break (even if no braces are used).
2020-12-28 12:58:06 -08:00
Peter Johnson
8f1f64ffb6
Remove year from file copyright message (NFC) ( #2972 )
...
Also update copyright to include "and other WPILib contributors" and clarify
license referral language to not be restricted to FIRST teams.
2020-12-26 14:12:05 -08:00
Peter Johnson
a8bb2ef1c3
[sim] Fix ADXRS450_GyroSim and DutyCycleEncoderSim ( #2963 )
...
These were broken by #2952 .
Also fix Java ADXRS450_Gyro angle/rate SimValue names.
2020-12-24 12:23:38 -08:00
Matt
963ad5c255
[wpilib] Add noise to Differential Drive simulator ( #2903 )
...
Co-authored-by: Prateek Machiraju <prateek.machiraju@gmail.com >
2020-12-04 18:46:50 -08:00
Peter Johnson
727940d847
[wpilib] Move Field2d to SmartDashboard
2020-12-04 00:36:55 -08:00
Prateek Machiraju
616405f7ae
[wpilib] Fix DiffDriveSim pose reset and example ( #2837 )
...
Calling the resetPosition method on an odometry instance expects encoder positions to be reset to zero.
2020-11-11 22:37:14 -08:00
Prateek Machiraju
3c85a40648
[sim] Use units for voltage and current in RoboRioSim ( #2853 )
2020-11-11 22:33:49 -08:00
Tyler Veness
7ae8c7b247
[sim] Use DutyCycleEncoder FPGA index for sim device number ( #2803 )
...
The source channel doesn't necessarily correspond with the HALSIM device
index.
2020-10-24 20:18:58 -07:00
Tyler Veness
1069019fd2
[wpilib] Add DutyCycleEncoderSim ( #2798 )
2020-10-23 20:18:49 -07:00
Tyler Veness
fb7b41793b
[wpilib] Add ADXRS450_GyroSim ( #2800 )
...
Closes #2760 .
2020-10-22 20:40:27 -07:00
Tyler Veness
abbf9f01ab
[wpilib] Fix typos in simulation classes ( #2799 )
2020-10-22 20:38:12 -07:00
Prateek Machiraju
061432147d
[wpilib] Clean up physics simulation class APIs ( #2763 )
2020-10-15 21:00:45 -07:00