https://github.com/cyberarm/rover_project
A project to create a robot control system in Ruby on the Pi.
https://github.com/cyberarm/rover_project
robot-controller ruby
Last synced: over 1 year ago
JSON representation
A project to create a robot control system in Ruby on the Pi.
- Host: GitHub
- URL: https://github.com/cyberarm/rover_project
- Owner: cyberarm
- Created: 2018-02-18T22:26:33.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-07-23T02:56:27.000Z (almost 8 years ago)
- Last Synced: 2025-01-14T12:29:12.661Z (over 1 year ago)
- Topics: robot-controller, ruby
- Language: Ruby
- Homepage:
- Size: 66.4 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Rover Project
An over ambitious project to create a robot control system.
## Example*
* This is the goal and does not function as such yet.
``` ruby
require "rover_project"
# Define hardware and input
class VirtualHardwareInterface < RoverProject::HardwareInterface
def setup
add_motor_controller(name: :drivetrain, type: :L298N, pins: {enable_a: 0, in1: 1, in2: 2, in3: 3, in4: 4, enable_b: 5})
add_motor(name: :left_drive, motor_controller: :drivetrain, direction: :forward, port: :a)
add_motor(name: :right_drive, motor_controller: :drivetrain, direction: :backward, port: :b)
add_input(name: :gamepad, type: :gamepad)
end
end
# Program to run
class TeleOp < RoverProject::Program
def setup
use(VirtualHardwareInterface)
end
def loop
motor(:left_drive).set_power(input(:gamepad).left_stick_y)
motor(:right_drive).set_power(input(:gamepad).right_stick_y)
end
end
# # Start Rover supervisor which manages the main loop
RoverProject::Supervisor.new("0.0.0.0", 4567)
```