Skip to content

V2025.00 WPILib LabVIEW Math -- FRC Season 2025 -- Initial Release

Latest
Compare
Choose a tag to compare
@jsimpso81 jsimpso81 released this 12 Jan 16:54
· 3 commits to master since this release

V2025.01 WPILib LabVIEW Math -- FRC Season 2025 -- Update 1

V2025.00 WPILib LabVIEW Math - Control and Trajectory Library

Description

This is a LabVIEW port of the math section of WPILib for the First FRC Robot Competition. This library implements almost all of the C++/Java WPILIB math library for LabVIEW users. This is a native port. The library includes some additional enhancements including digital sequential logic functions, PID autotune, and Simple Motor Feedforward Ka tuning helper. The library also includes a number of utility programs - robot simulators, and trajectory creation utilities.

Some documentation still needs to be finalized. There will updates during the season to address this. If there are questions, please ask via the github issues or via chiefdelphi.

Installation

IMPORTANT If version 2.x of this library are currently installed, open NI Package Manager and remove them before installing this new package. This is needed because of the package name change.

To install:

  1. Download the "wpilibmathlv23*.nipkg" install file (The * is replaced with the library version number.)
  2. Double click the "wpilibmathlv23*.nipkg" file. (Administrator permissions are required to install) Previous versions will be upgraded.

Optionally to install the function examples (highly suggested):
0. If previous examples were manually installed, delete them from: "C:\Program Files (x86)\National Instruments\LabVIEW 2023\Examples\FRC\roboRIO\Math - Control and Trajectory".

  1. Download the "wpilibmathexamples*.nipkg" install file (The * is replaced with the library version number.)
  2. Double click the "wpilibmathexamples*.nipkg" file. (Administrator permissions are required to install) Previous versions will be upgraded.

Removal

To uninstall:

  1. Open NI Package Manager. Select the package(s), then select uninstall.

What's New and Changed Since 2025.0

  • Added 2025 field picture.

  • Update april tag positions for 2025 season

  • Updates to Linear Filter.

  • Added Simulation Driver Station Communications helper VI. This aids in simulating and testing control code without a robot.

  • Added models for newer motors.

  • Fixed a number of issues.

Complete Change Log

Full Changelog: V2024.01...V2025.00

Previous recent change logs:
V2024.00...V2024.01
V3.07...V2024.00
V3.06...V3.07
V3.05...V3.06
V3.04...V3.05
V3.03...V3.04
V3.02...V3.03
V3.01...V3.02
V2.12...V3.01
V2.12A...V2.12B
V2.12...V2.12A
V2.10...V2.12

Notes for users upgrading from version 2.x

If you use any of the 2d geometry routines directly from previous versions of the library before they were renamed with the 2d suffix, they will cause an issue the first time your project is opened. If this happens "browse" to "c:\program files (x86)\nationalinstruments\labview2020\vi.lib\rock robotics\third party\jasjunk\trajlib" (I may have the name not exactly correct) and find the routine with 2d in the name. For example pose_interpolate becomes pose2d_interpolate.

Known Bugs

  • If the create trajectory utility version 2.03 was used, the new utility might not read the config XML file. (Prior and later versions should be okay.) The format of the file was changed slighted. If this problem is encountered, the XML file can be edited (with Notepad) and changed as follows:

Change this:

    <Boolean>
    <Name>UseWeights</Name>
    <Val>0</Val>
    </Boolean>

to:

    <Boolean>
    <Name>UseWeights</Name>
    <Val>0</Val>
    </Boolean>
    <String>
    <Name>FieldName</Name>
    <Val>2020 Infinite Recharge</Val>
    </String>

Other Notes

The source code for the utility programs are not included in this repository. There is a separate containing the utilities, samples, and test programs. That repository can be found here: https://github.com/jsimpso81/WPIlibMathLabVIEW_Examples

Please report issues using github. I'll try to handle them in a timely manner (no promises however). Suggestions, and enhancements are always welcome.