Commit Graph

287 Commits

Author SHA1 Message Date
Brad Miller (WPI)
41897af453 Merge "CANJaguar in Java now requires control mode configuration data at compile time" 2014-06-25 13:31:02 -07:00
thomasclark
f3593c6986 CANJaguar in Java now requires control mode configuration data at compile time
Change-Id: I80b63e876d330d693375d69137c78e487c03c1c7
2014-06-25 16:25:39 -04:00
Brad Miller (WPI)
945c7519e6 Merge "Fixed Java PCM test" 2014-06-25 07:56:57 -07:00
thomasclark
81a0664c58 Fixed Java PCM test
Change-Id: I17bee703a05d800461b56bf5e179e8d9977e5dfd
2014-06-25 10:54:24 -04:00
Brad Miller (WPI)
12af2db151 Merge "Java CANJaguar changes" 2014-06-25 07:01:35 -07:00
Jonathan Leitschuh
df9b702e0b Adds a missing Hamcrest dependency for the Java Integration Test system
Change-Id: I4349ef2ff7636b6a18e7fddcc3118748ab178bbc
2014-06-25 09:32:56 -04:00
thomasclark
1bbf350811 Java CANJaguar changes
Change-Id: Icb15b1b140816e44caec36cda2466a64e5cabf1d

Change-Id: Idd6aebefe03acff5ab211a5e3e73a29563601515
2014-06-24 16:22:25 -04:00
Kevin O'Connor
605148456e * Add WriteBulk and ReadOnly to C++ I2C
Change-Id: If6082f6b92b4be5e328278ba536d5a7681082c9f (+4 squashed commit)

Squashed commit:

[86b4ae7] * Port I2C to roboRIO in JNI and Java. Left read method as a transaction and added readOnly. Left write as a single byte and added writeBulk. Need to go back to C++ and update to match.

Change-Id: I290d84211a4b7bb942d785730c0e6929449cf69f

[7d37419] * Remove HiTechnic sensors from Java. May be added back later as examples

Change-Id: Ie93e23a70fd953c99c03d50d9529220f86d32e03

[e62bfbf] * I2C ported to roboRIO i2clib in HAL and C++

Change-Id: Idb0e8cee5a1e8c1a0b0733ca94b528f659352915

[1059a48] * Remove HiTechnic sensors (Lego connector) may be added back as examples later

Change-Id: I84b8e1e022db2c69d487ed9ad5b3ec0e7ea57282 (+2 squashed commit)

Squashed commit:

[e62bfbf] * I2C ported to roboRIO i2clib in HAL and C++

Change-Id: Idb0e8cee5a1e8c1a0b0733ca94b528f659352915

[1059a48] * Remove HiTechnic sensors (Lego connector) may be added back as examples later

Change-Id: I84b8e1e022db2c69d487ed9ad5b3ec0e7ea57282
2014-06-23 18:23:14 -04:00
Alex Henning
40628a817d Added support for PacGoat robot for artf2591.
This also includes support for solenoids (artf2592) in the gazebo plugin and WPILibJavaSim, fixes a concurrency issue with JavaGazebo.

Change-Id: I5bd19556a7511387852c98414e4a29fdfd68b8cd
2014-06-23 14:43:45 -07:00
Thomas Clark (WPI)
0f8c83f693 Merge "Adds CommandTests to the C++ Integration Test Suite Also adds/updates some comments in the Java Command Tests" 2014-06-23 14:21:35 -07:00
Jonathan Leitschuh
61ca865117 Adds CommandTests to the C++ Integration Test Suite
Also adds/updates some comments in the Java Command Tests

Change-Id: I24ae6cce06b8d5251e1cb115cd725f24a871635f
2014-06-23 17:03:55 -04:00
Colby Skeggs
f5862582e6 FRCSim artf2604: Synchronized the codebases of WPILibJ-Simulation
and the main WPILibJ.

Change-Id: I9b933b6f21be21cd5e9808b6f8d127a995a742e7
2014-06-23 11:05:46 -07:00
Colby Skeggs
698f38d404 Fixed FRCSim artf2594 - JavaGazebo no longer crashes if gzserver hasn't started, and cleaned up some code in the area.
Change-Id: I4daae199fb6dda6561c2cb85fc5254e36bcb3066
2014-06-23 10:52:32 -07:00
Kacper Puczydlowski
2cc2e6a9e3 Added PDP tests for java and C++, updated TestBench.h
Change-Id: Idd6be8739065d757f5d1471ebb685d48a1c53e59
2014-06-19 14:56:06 -04:00
Jonathan Leitschuh
1fb6d9fd0c Updates/Tests the AnalogPotentiometer
New constructor for the AnalogPotentiometer to allow users to pass it an AnalogInput into the constructor
New FakePotentiometerSource to emulate a AnalogPotentiometer

Change-Id: I0f85b3d38e99d7ccbc7676bdf17fc3ec7e041e84
2014-06-18 17:21:53 -04:00
Kacper Puczydlowski
52654851d9 Add C++ Counter Test
Added a PCM java test and a Counter C++ test

Add RelayTest for C++, fixed spelling error in Relay.cpp

Change-Id: I436ac34449d00e8dcd1b988758cc24e80534a2c7
2014-06-18 12:19:15 -04:00
Alex Henning
9ff7412780 Fixes for rebasing.
Change-Id: I765d2f2fc044fb30caef3cda8ff6bd03fef6b4e0
2014-06-17 14:09:58 -07:00
Jonathan Leitschuh
bd1aea0d24 Adds RelayCrossConnect tests as well as AnalogCrossConnect tests for java
Also splits up the tests into multiple TestSuites so that the they are explicitly associated with the tests in the package that they are running

Change-Id: I746f1125fcdc9a180c2eedd2505d6ae9003fbadc
2014-06-17 11:10:45 -04:00
Jonathan Leitschuh
fc2f0e37ba Adds JNI methods for the new CANSessionMUX
Updates the CAN send message to use CANSessionMuxSendMessage in the C++ JNI

Updates the CANJNI to use the new C++ JNI parameters

Change-Id: Ib7da7d5929c7c5656bf388246aa72aed23590173
2014-06-16 15:39:27 -04:00
Jonathan Leitschuh
974362bd89 Updates CANJNI.cpp so that it compiles properly (CAN NOT WORKING)
Change-Id: I26d841fcd5a6bb33352e32d2d3ad4836c2a0a21e
2014-06-16 12:29:13 -04:00
thomasclark
58021f7397 Removed analog and digital module numbers
AnalogModule and DigitalModule classes still exist, at least until they are
refactored into the classes that use them.

Change-Id: I5544d5418822f19d54ba0a5d651e64fad8b7b10d
2014-06-13 17:57:40 -04:00
Jonathan Leitschuh
aa3b24092a Adds several more tests to the PID Test Class
Adds Logger output to tests when they fail to allow the rest of the tests to run while you can follow the failure stack trace. This allows you to begin working on fixing the failure before the remainder of the tests have run.

Change-Id: I84adfad0b31b166f027d0bf9797a23856dd02f97
2014-06-13 15:03:38 -04:00
Brad Miller (WPI)
fdfc33a380 Merge "Removes the print line from the Preferences class so that the write method no longer causes a system print" 2014-06-13 11:41:34 -07:00
Jonathan Leitschuh
4be3bc25ac Removes the print line from the Preferences class so that the write method no longer causes a system print
Change-Id: I42af95c3bdd48fa1e2d92fe1c70b8e777f822616
2014-06-13 14:36:37 -04:00
Brad Miller (WPI)
c7e7f39c4a Merge "Updates the PID.free() method to release the NetworkTable listener. [artf2571] Documentation update on the Depreciated method. Removes the PID.setTolerance(Tolerance tolerance) method because it was private and never used" 2014-06-13 07:26:19 -07:00
Jonathan Leitschuh
94894931a5 Updates the PID.free() method to release the NetworkTable listener. [artf2571]
Documentation update on the Depreciated method.
Removes the PID.setTolerance(Tolerance tolerance) method because it was private and never used

Change-Id: I5cddbcc96ed40b5bb0d9f33e2a3586dce91dc532
2014-06-13 10:24:32 -04:00
Alex Henning
cb56c9a144 Initial commit of the WPILib simulation support in an alpha quality state.
Fixes to deal with the switch to .hpp files in the HAL and other misc problems due to rebasing.

Added Omar's changes to the compressor interface

Fixes to make C++ plugin compile on linux.

Added import of the WPILibSim code from the graduate class. It shows up as wpilibJavaSim to follow the convention set by wpilibJava, wpilibJavaJNI and wpilibJavaFinal.

Fixed wpilibJavaSim artifactId to mirror the new convention.

Modified the build of the java plugin to pull in the simulation dependencies.

Added stacktrace printing.

Fixed support for creating projects.

Added support for the isReal() and isSimulation() methods along with the AnalogPotentiometer object to support simulating GearsBot.

Added support for a "WPILib Simulate" button.

Added GearsBot to the built in examples.

Added support for specifying the world file during project creation and switched the default from BluntObjectBot to GearsBot.

Removed unused import.

Added file browser for world files.

Added support for debugging in simulation.

Change simulate icon to be a Gazebo icon.

Switched over to the gazebo messaging system.

Updated location of default world file.

Reverted cmake change.

Fixed bug in WPILibJSim, added better logging and cleaned up code.

Made the frc_gazebo_plugin build using raw cmake instead of catkin, breaking the final ROS dependencies.

Added installation to frc_gazebo_plugin Makefile.

Fixed running of simulation to actually use frcsim.

Initial commit of simulation library for C++. Has the minimal subset of features necessary for having a Simple Robot run in teleoperated mode.

Added notes for generating protobuf messages.

Import of the debuild process into the main repository.

Moved frc_gazebo_plugin under simulation and removed the gazebo folder.

Updated the gazebo plugin to remove excessive printing and limit motor signal to [-1,1].

Updated WPILibJSim to support latching messages and to sleep for 20ms in iterative robot.

Reduced delay between starting frcsim and the users program to 1 second.

Updated GearsBot example.

Fixed a few minor issues for demoable state.

Added simulator support for Victors, Jaguars and Talons.

Added NetworkTables, SmartDashboard and LiveWindow to the simulator.

Added AnalogPotentiometer for simulation.

Added support for simulating encoders.

Added simulation support for Gyro.

Added IterativeRobot, Fixed Timers, Notifiers, PIDControllers and other minor fixes + cleanup.

Added RobotDrive support to simulation.

Separated out JavaGazebo so that SimDS will be able to reuse it.

Separated out SimDS into its own application..

Fixes so that the SimDS is distributed and runs properly for Java with the eclipse plugins.

Added DriverStation support to WPILibCSim

Cleanup of DriverStation, WaitUntilCommand and AnalogPotentiometer for WPILibCSim.

Cleanup of includes for WPILibCSim

Added AnalogPotentiometer to the real WPILibC.

Added AnalogPotentiometer to the real WPILibC.

Added GearsBot example to C++ eclipse plugin.

WPILibCSim fixes to work with launching from the plugin.

Package libwpilibsim in a deb file.

Added includes to plugin distribution.

Added support for external-limit-switches to Gazebo, Java and C++.

Added support for Gazebo Rangefinders and Analog channels to read their values in C++ and Java.

Added support for internal limit switches.

Updated GearsBot programs to use limit switches + range finders.

Added disabling of motors when robot is disabled to more closely mimic the real robot.

Fixes to deal with the switch to .hpp files in the HAL and other misc problems due to rebasing.

Change-Id: I624c5f4d0f28282616a7c92083575bf68adcdce2
2014-06-13 09:31:32 -04:00
Brad Miller (WPI)
d5a509c7e7 Merge "Changed AnalogChannel to AnalogInput, added AnalogOutput for MXP" 2014-06-12 15:10:31 -07:00
thomasclark
3538e2c05c Changed AnalogChannel to AnalogInput, added AnalogOutput for MXP
Change-Id: I863d89c61ff2cf4a7a3aeeca1296978e728758b6
2014-06-12 18:08:20 -04:00
Jonathan Leitschuh
a4708d850c Makes the PID Test run 10 times in order to determine how many times it fails out of 10 runs per motor. (Unstable Test!)
Change-Id: I74b62f6b9ff0b932b7118562c38e8c5c9d0960f9
2014-06-12 18:02:09 -04:00
Jonathan Leitschuh
a46c246587 Moves the Talon to port 10 to reflect the hardware change
Change-Id: I40e85f52031fec27e0715c2d92510030dd4bdc8d
2014-06-12 17:55:58 -04:00
thomasclark
8d5c67e6aa Added Omar's changes to the compressor interface
Change-Id: Iff22b0eaa319065b06795b381c4d6072f8087da8
2014-06-12 12:43:03 -04:00
Brad Miller (WPI)
3c5d46c2ae Merge "Added support for digital and analog IO pins on the MXP" 2014-06-12 06:39:25 -07:00
thomasclark
29c4534c58 Added support for digital and analog IO pins on the MXP
Change-Id: I3a4e14ceab885d19a615d6cd45f22a2250ad2856
2014-06-12 09:09:46 -04:00
Jonathan Leitschuh
8b19137ca6 WPILibJ More Integration Tests
Refactors the MotorEncoderTest to make use of the parameterized testing framework
Adds a test for the Preferences Class
Updates the TiltPanCameraTest to work
Makes the TimerTest use math for long values
Adds a Button Test to Test the internal Button
Speeds up the FakeCounterSource/FakeEncoderSource to decrease test time
Moves the AbstractComsSetup Block to a static method so that it only runs once
Updates the logging.properties class so that tests are quieter

Change-Id: I70b39f34122e6398f406a63e6ef04cde9fbe95ef
2014-06-11 14:43:59 -04:00
Jonathan Leitschuh
85d9ead4e2 Sets the default PIDSourceParameter to be kDistance so there is no null pointer exception
Change-Id: Ice4889ea3f6fd5afe6984f9715758a178222837f
2014-06-11 11:11:01 -04:00
Jonathan Leitschuh
eb00824a51 Updates the MotorEncoder and TestBench to clarify where setup/teardown methods are called
Change-Id: I71fd69e03b2d336297aa6769238d3e422fe38dc4
2014-06-10 16:09:56 -04:00
Kacper Puczydlowski
c90c38fa25 Adds a PIDTest to the integration tests. Contributors: Jonathan Leitschuh [artf2568]
Change-Id: Ibcbd1774360545f9d08ec3a8917613f2b2d335ee
2014-06-10 15:50:21 -04:00
Jonathan Leitschuh
59a1fb2c08 Makes the PIDController completely thread safe and ensures that freeing the PID Loop truly clears it [artf2567]
Change-Id: I96502e1d58bb4353ab5f53086dd275f3c372a7af
2014-06-10 15:44:18 -04:00
Thomas Clark (WPI)
32dc451a72 Merge "Fixes the Preferences putting the preferences in a file 'file:' and instead puts it in the root directory [artf2566]" 2014-06-10 12:36:44 -07:00
Jonathan Leitschuh
63ae47b7e4 Fixes the Preferences putting the preferences in a file 'file:' and instead puts it in the root directory [artf2566]
Change-Id: If532542f1a746bff6b34c9d92462cd1722b4ff05
2014-06-10 15:34:37 -04:00
thomasclark
35ac240d4c Switch to 0-based for all pins on the RoboRIO [artf2564]
Change-Id: I249965a9d55aec53b7d8a9be3ba5cc43500ddda4
2014-06-10 12:44:29 -04:00
thomasclark
59dfb4d216 Removed the old compressor code
Change-Id: Ia36724f42254d49238db687c62f339c2172ba582
2014-06-09 11:12:44 -04:00
Jonathan Leitschuh
09feff102f Integrates tests for Commands
Change-Id: I972bdba167c9f305532067303b6faf1042940ab3
2014-06-05 16:59:11 -04:00
Jonathan Leitschuh
70ccca881c Adds/Updates the JavaIntegrationTest Framework
Modifies where the tilt-pan camera gets instantiated so that it can be used for multiple tests

Adds a test for counters

Updates the TestBench and TestSuite to reflect the physical changes to the board

Adds a test on the Digital Cross Connections

Adds a test on the counter to see if they are working properly

Increases the reset time on the TiltPan Fixture to allow it to calibrate correctly

Fixes the wasReset flag being calculated with a bitshift instead of using boolean algebra.

Adds/Updates Integration Tests
Introduces java.util.logging to the test framework to allow for easier debugging
Fully tests all DIO/Counter/Encoder features
Pulls in Command Tests from the old testing framework

Updates the build.xml to run the Ant Compiler with 1.7 if Java 1.8 is installed

Change-Id: I43d85054be393ef448643c1d35558cfa99749c99
2014-06-05 12:00:56 -04:00
thomasclark
36470d3b7c Made Java PCMCompressor methods public
Change-Id: Id5988f8b70868d6b2c9b9060fd0d7435d69c7c58
2014-06-04 19:53:50 -04:00
thomasclark
187aa7a138 Support for the CAN power distribution panel
Change-Id: If4f8f7f050bf1095221cf16f030a6a8a67532656
2014-05-30 14:11:42 -04:00
Brad Miller
bf7ef4376c Changed the default logging level to WARNING
This prevents excessive logging from the HAL. Put it back as needed

Change-Id: I217f8bf20dd092dd6205444b08c98c9a7c3c83de
2014-05-30 10:09:56 -04:00
thomasclark
b219d19153 Fixed several files to use .hpp headers
Change-Id: I2a9ed167c18188b32a746e65dc3b08853b371dc4
2014-05-29 18:12:43 -04:00
Brad Miller (WPI)
2bf9db0019 Merge "Adds/Extends several integration tests. Modifies Java Servo with correct values according to the datasheet assoiciated with the Hitec HS-322HD" 2014-05-29 12:59:40 -07:00