2014-06-02 17:34:10 -04:00
|
|
|
/*----------------------------------------------------------------------------*/
|
2016-01-02 03:02:34 -08:00
|
|
|
/* Copyright (c) FIRST 2014-2016. All Rights Reserved. */
|
2014-06-02 17:34:10 -04:00
|
|
|
/* Open Source Software - may be modified and shared by FRC teams. The code */
|
|
|
|
|
/* must be accompanied by the FIRST BSD license file in the root directory of */
|
|
|
|
|
/* the project. */
|
|
|
|
|
/*----------------------------------------------------------------------------*/
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
2016-05-25 22:38:11 -07:00
|
|
|
#include <stdint.h>
|
2014-06-02 17:34:10 -04:00
|
|
|
|
|
|
|
|
class TestBench {
|
2015-06-25 15:07:55 -04:00
|
|
|
public:
|
|
|
|
|
/* Analog input channels */
|
|
|
|
|
static const uint32_t kCameraGyroChannel = 0;
|
|
|
|
|
static const uint32_t kFakeCompressorChannel = 1;
|
|
|
|
|
static const uint32_t kFakeAnalogOutputChannel = 2;
|
2014-06-12 18:07:45 -04:00
|
|
|
|
2015-06-25 15:07:55 -04:00
|
|
|
/* Analog output channels */
|
|
|
|
|
static const uint32_t kAnalogOutputChannel = 0;
|
|
|
|
|
static const uint32_t kFakeJaguarPotentiometer = 1;
|
2014-06-12 11:17:57 -04:00
|
|
|
|
2015-06-25 15:07:55 -04:00
|
|
|
/* DIO channels */
|
|
|
|
|
static const uint32_t kTalonEncoderChannelA = 0;
|
|
|
|
|
static const uint32_t kTalonEncoderChannelB = 1;
|
|
|
|
|
static const uint32_t kVictorEncoderChannelA = 2;
|
|
|
|
|
static const uint32_t kVictorEncoderChannelB = 3;
|
|
|
|
|
static const uint32_t kJaguarEncoderChannelA = 4;
|
|
|
|
|
static const uint32_t kJaguarEncoderChannelB = 5;
|
|
|
|
|
static const uint32_t kLoop1OutputChannel = 6;
|
|
|
|
|
static const uint32_t kLoop1InputChannel = 7;
|
|
|
|
|
static const uint32_t kLoop2OutputChannel = 8;
|
|
|
|
|
static const uint32_t kLoop2InputChannel = 9;
|
2014-06-12 11:17:57 -04:00
|
|
|
|
2015-06-25 15:07:55 -04:00
|
|
|
/* PWM channels */
|
|
|
|
|
static const uint32_t kVictorChannel = 1;
|
|
|
|
|
static const uint32_t kJaguarChannel = 2;
|
|
|
|
|
static const uint32_t kCameraPanChannel = 8;
|
|
|
|
|
static const uint32_t kCameraTiltChannel = 9;
|
2014-06-02 17:34:10 -04:00
|
|
|
|
2015-06-25 15:07:55 -04:00
|
|
|
/* MXP digital channels */
|
|
|
|
|
static const uint32_t kTalonChannel = 10;
|
|
|
|
|
static const uint32_t kFakePressureSwitchChannel = 11;
|
|
|
|
|
static const uint32_t kFakeSolenoid1Channel = 12;
|
|
|
|
|
static const uint32_t kFakeSolenoid2Channel = 13;
|
|
|
|
|
static const uint32_t kFakeRelayForward = 18;
|
|
|
|
|
static const uint32_t kFakeRelayReverse = 19;
|
|
|
|
|
static const uint32_t kFakeJaguarForwardLimit = 20;
|
|
|
|
|
static const uint32_t kFakeJaguarReverseLimit = 21;
|
2014-06-12 16:29:47 -04:00
|
|
|
|
2015-06-25 15:07:55 -04:00
|
|
|
/* Relay channels */
|
|
|
|
|
static const uint32_t kRelayChannel = 0;
|
|
|
|
|
static const uint32_t kCANJaguarRelayChannel = 1;
|
2014-06-16 10:24:48 -04:00
|
|
|
|
2015-06-25 15:07:55 -04:00
|
|
|
/* CAN IDs */
|
|
|
|
|
static const uint32_t kCANJaguarID = 2;
|
2014-06-19 14:56:06 -04:00
|
|
|
|
2015-06-25 15:07:55 -04:00
|
|
|
/* PDP channels */
|
|
|
|
|
static const uint32_t kJaguarPDPChannel = 6;
|
|
|
|
|
static const uint32_t kVictorPDPChannel = 8;
|
2016-01-29 14:25:19 -05:00
|
|
|
static const uint32_t kTalonPDPChannel = 10;
|
2014-08-05 15:21:12 -04:00
|
|
|
|
2015-06-25 15:07:55 -04:00
|
|
|
/* PCM channels */
|
|
|
|
|
static const int32_t kSolenoidChannel1 = 0;
|
|
|
|
|
static const int32_t kSolenoidChannel2 = 1;
|
2015-10-30 16:01:57 -07:00
|
|
|
|
|
|
|
|
/* Filter constants */
|
|
|
|
|
static constexpr double kFilterStep = 0.005;
|
|
|
|
|
static constexpr double kFilterTime = 2.0;
|
|
|
|
|
static constexpr double kSinglePoleIIRTimeConstant = 0.015915;
|
|
|
|
|
static constexpr double kSinglePoleIIRExpectedOutput = -3.2172003;
|
|
|
|
|
static constexpr double kHighPassTimeConstant = 0.006631;
|
|
|
|
|
static constexpr double kHighPassExpectedOutput = 10.074717;
|
|
|
|
|
static constexpr int kMovAvgTaps = 6;
|
|
|
|
|
static constexpr double kMovAvgExpectedOutput = -10.191644;
|
2014-06-12 11:17:57 -04:00
|
|
|
};
|