Skip to content

PWM-driven Solenoid Testbench #69

@HeroOfWind243

Description

@HeroOfWind243

The Engineer's grabber is most likely going to be driven by a solenoid, a "piston" driven by electrical current creating a magnetic field. There is currently no code created to drive one of these, however, so we are being given a testbench ahead of time to practice on.

The solenoids we are using are driven by Pulse Width Modulation, or PWM. Effectively, you send a signal in to the solenoid, and pulse it at different frequencies to achieve different desired extension lengths from the solenoid. Managing the timing and math of PWM is a created module in taproot (see pwm.hpp and pwm.cpp), using this and communicating on PWM port C1 (the same port that our hopper servo currently uses), a grabber subsystem should be created with the goal of driving the solenoid to any arbitrary position.

Much of this code will be similar to the hopper subsystem, which uses PWM to drive a servo motor.

Tasks:

  • Create Grabber subsystem
  • Integrate PWM math
  • Find a way to send PWM data through the correct PWM port.
  • Create a command that will drive the solenoid to different positions based on remote input

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

Status

🏗 In progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions