mirror of
https://github.com/odriverobotics/ODrive.git
synced 2026-08-18 09:29:03 +08:00
add loopback test group
This commit is contained in:
@@ -538,6 +538,9 @@ class TestHighVelocityInViscousFluid(DualAxisTest):
|
||||
request_state(load_ctx, AXIS_STATE_IDLE)
|
||||
request_state(driver_ctx, AXIS_STATE_IDLE)
|
||||
|
||||
# class TestSelfLoadedPosVelDistribution(DualAxisTest):
|
||||
|
||||
|
||||
class TestVelCtrlVsPosCtrl(DualAxisTest):
|
||||
"""
|
||||
Uses one ODrive as a load operating in velocity control mode.
|
||||
|
||||
+14
-10
@@ -25,12 +25,14 @@ parser.add_argument("--ignore", metavar='DEVICE', action='store', nargs='+',
|
||||
help="Ignore one or more ODrives or axes")
|
||||
parser.add_argument("--test-rig-yaml", type=argparse.FileType('r'),
|
||||
help="test rig YAML file")
|
||||
parser.set_defaults(test_rig_yaml=script_path + '/test-rig-parallel.yaml')
|
||||
# parser.set_defaults(test_rig_yaml=script_path + '/test-rig-parallel.yaml')
|
||||
parser.set_defaults(ignore=[])
|
||||
args = parser.parse_args()
|
||||
test_rig_yaml = yaml.load(args.test_rig_yaml)
|
||||
|
||||
# TODO: add --only option
|
||||
|
||||
|
||||
all_tests = []
|
||||
if not args.skip_boring_tests:
|
||||
all_tests.append(TestFlashAndErase())
|
||||
@@ -47,19 +49,21 @@ else:
|
||||
all_tests.append(TestDiscoverAndGotoIdle())
|
||||
all_tests.append(TestEncoderOffsetCalibration(pass_if_ready=True))
|
||||
|
||||
#all_tests.append(TestHighVelocity())
|
||||
all_tests.append(TestHighVelocityInViscousFluid(load_current=35, driver_current=45))
|
||||
# all_tests.append(TestVelCtrlVsPosCtrl())
|
||||
# TODO: test step/dir
|
||||
# TODO: test sensorless
|
||||
# TODO: test ASCII protocol
|
||||
# TODO: test protocol over UART
|
||||
if 'test-rig-parallel.yaml' in test_rig_yaml:
|
||||
#all_tests.append(TestHighVelocity())
|
||||
all_tests.append(TestHighVelocityInViscousFluid(load_current=35, driver_current=45))
|
||||
# all_tests.append(TestVelCtrlVsPosCtrl())
|
||||
# TODO: test step/dir
|
||||
# TODO: test sensorless
|
||||
# TODO: test ASCII protocol
|
||||
# TODO: test protocol over UART
|
||||
elif 'test-rig-loopback.yaml' in test_rig_yaml:
|
||||
pass
|
||||
|
||||
|
||||
print(str(args.ignore))
|
||||
logger = Logger()
|
||||
|
||||
|
||||
test_rig_yaml = yaml.load(args.test_rig_yaml)
|
||||
os.chdir(script_path + '/../Firmware')
|
||||
|
||||
# Build a dictionary of odrive test contexts by name
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
|
||||
odrives:
|
||||
- name: odrive-48V
|
||||
board-version: v3.5-48V
|
||||
serial-number: "3660335E3037"
|
||||
brake-resistance: 0.47
|
||||
uart: /dev/serial/by-id/[not-yet-used]
|
||||
usb: auto
|
||||
programmer: '533f7506493f49514454193f'
|
||||
vbus-voltage: 24 # [V]
|
||||
max-brake-power: 150 # [W]
|
||||
axes:
|
||||
- name: 'M0'
|
||||
motor-phase-resistance: 0.0245
|
||||
motor-phase-inductance: 2.03e-05
|
||||
motor-pole-pairs: 7
|
||||
motor-direction: 1
|
||||
motor-kv: 190
|
||||
motor-max-current: 70
|
||||
motor-max-voltage: 40
|
||||
encoder-cpr: 8192
|
||||
encoder-max-rpm: 7000
|
||||
- name: 'M1'
|
||||
motor-phase-resistance: 0.0245
|
||||
motor-phase-inductance: 2.03e-05
|
||||
motor-pole-pairs: 7
|
||||
motor-direction: -1
|
||||
motor-kv: 190
|
||||
motor-max-current: 70
|
||||
motor-max-voltage: 40
|
||||
encoder-cpr: 8192
|
||||
encoder-max-rpm: 7000
|
||||
|
||||
# Mechanical couplings
|
||||
couplings:
|
||||
- [ odrive-48V.M0, odrive-48V.M1 ]
|
||||
Reference in New Issue
Block a user