-
Prototype electronics
04/19/2023 at 15:20 • 0 commentsThe electronics for the prototype consist of a 3s lipo battery powering some BTS7960 motor controllers and an Arduino UNO. Communication is done through a T8S radio transmitter and receiver. The receiver outputs s.bus which needs to be inverted in order to connect to the Arduino's uart.
I plan on changing the communication method because the T8S and Arduino are so expensive. But If you'd like more information about how to use S.bus with Arduino, check out this git hub library https://github.com/bolderflight/sbus
So far, I'm a big fan of the BTS790 motor controllers but they're wiring can be a bit of a mess and requiring two PWM signals for inputs is a bit of a mess. I plan on creating an interface board to simplify the wiring. But until then, checkout this tutorial for how to wire them to an Arduino https://electropeak.com/learn/interfacing-bts7960-43a-high-power-motor-driver-module-with-arduino/
I used a power distribution board from a previous project, plan to redo to include some fuses for over current protection. https://hackaday.io/project/188503-fpv-robot/log/215442-a-sweet-new-power-distribution-boardthanks-pcbway
Biggest problem with the prototype electronics: no main power switch :(
Total Electronics BOM: $117.99
Doesn't include wiring or shipping or connectors.
Biggest cost sinks right now are the Arduino and transmitter/receiver. I plan to switch to using wifi+esp32 for communication which should significantly drop cost.
Electrical BOM
Qty
Unit Cost
total cost
Arduino UNO
1
$ 16.00
$ 16.00
Voltage Regulator
1
$ 3.33
$ 3.33
BTS7960
2
$ 6.33
$ 12.66
T18 transmitter & receiver
1
$ 57.00
$ 57.00
Power Distribution board
1
$ 10.00
$ 10.00
custom
3s battery
1
$ 17.00
$ 17.00
custom inverter
1
$ 2.00
$ 2.00
custom
-
It DRIVES!!!! Progress update
04/19/2023 at 02:24 • 0 commentsI know in the last log I said I was going to use 2020 extruded aluminum for the frame, but a thought struck me. You know what's really cheap and super easy to work with? 2x4s!!!
The basic idea of the frame is to take right angle brackets and on one side have a hole for the shaft and on the other have a slot. The slot will have a normal wood screw go through and allow for adjustment to tension the chain.
The motor mounts are a similar idea, right angle bracket with mounting on one side and slots on the other.
The shafts are all 8mm rods, chosen because 608z bearing can be absurdly cheap and have a 8mm inner diameter. Granted for this prototype I wanted to go without bearings to see how it went, and it works surprisingly well. Each wheel and motor mount needs two right angle brackets.
The wheels are left over from an old design, they're 3d printed and have rough top conveyor material riveted on. Honestly they work fairly well but riveting the tread is an obnoxiously difficult process and I'd like to explore other options.
The motors are cims with a 12 tooth 20dp aluminum pinion to 52 tooth PETG gear. A 18 tooth 3d printed sprocket is coupled on going to 32 tooth sprocket on the wheel. Uses size 25 chain.
After driving for 5ish minutes, there was no noticeable wear on the gears or sprockets. Huge success there.
The frame was made from some warped 2x4s. It's critical to try and make it as flat as possible and I didn't quite get there. But, the fact that it was still drivable is a great sign. The kit allowing for a lot of slop will make for a better first robot building experience.
Mechanical BOM
Item
Qty
Unit Cost
Line Cost
2x4
2
$ 6.00
$ 12.00
Belly plate (27"x11")
1
$ 10.00
$ 10.00
8mm shaft
3
$ 2.06
$ 6.18
PETG filiment
1 kg
$ 20.00
$ 20.00
Cim motor
2
$ 35.00
$ 70.00
Pinions
2
$ 10.00
$ 20.00
Chain
1
$ 13.00
$ 13.00
Rough top tread
1
$ 7.84
$ 7.84
3 inch screws
1 inch screws
Shaft Brackets
Wheel hub
32 tooth sprocket
18 tooth sprocket
52 tooth gear
18 Sprocket spacer
32 tooth sprocket spacer
Hardware cost total: $159.00
(Minus motors) = $89.00
I'll go into detail about the electronics used in the next post.
Good notes
- Gear reduction and sprockets seemed to hold fine
- Chain tensioning worked well
- design allowed for slop
Opportunities for improvement
- Turning was bad until weight was added, try wider wheel base or 6 wheel drop
- Bracket across from motor needs second screw hole
- Frame rail spacing was wider than necessary
- wheels were free floating on shaft
- Did not power front wheels
- Need to explore wheel options
- Cheaper motor configuration
-
Lesson Plan Outline
04/04/2023 at 01:22 • 0 commentsThe following provides a rough outline of the lessons I want to accompany the kit. As I'm going through the process of prototyping this kit, I'm going to keep these lessons in mind to make sure it complements the skills the students should be learning. Unfortunately, I won't know if it will work out how I intend until I get it into my students hands but it should be a decent starting point.
- Objective: provide a series of lesson plans to guide mentor through teaching brand new students.
- Lessons will be 45-60 minutes, with 10-15 minutes of instruction followed by 30-45 minutes of students split into small groups (2-4 students) to complete tasks to assemble the kit.
- No lesson is meant to go in depth on concepts, they are just meant to teach students just enough for a complete beginner to build their first robot.
Lessons
- Frame assembly
- Lesson will cover the following while demonstrating how to make a simple 90 degree gusset for t-slot frame
- Importance of safety glasses
- How to safely hold your material
- How to use a drill
- How to use wrench and allen wrench
- Each group will make a set of gussets and assemble their frame
- Drive train assembly
- Lesson will demonstrate motor mounting and chain assembly
- Brief intro to motors (RPM/torque)
- Discus gears
- Discus chains and how to assemble
- Groups will follow instructions on how to assemble drive train
- Electronics board assembly
- Less will briefly cover each electronic component, it's purpose, how to wire
- Battery
- Power distribution board
- Roborio
- Radio
- Motor controller
- How to strip wires
- Students will follow instructions and mount/wire all electronics. MUST GET INSTRUCTOR TO CHECK WIRING BEFORE POWER ON
- Basic drive code
- Lesson will cover the following (may be better to do multiple parts here)
- Starting a new project
- Important sections of code
- Declaring motor controller
- Declaring joystick
- Controlling motors
- Deploying code
- Groups will write and test their own code
- Assemble and code a pivot arm
- Lesson will cover example of how to calculate the gear ratio needed for an arm
- Includes how to code buttons
- Groups will follow instructions to build pivot arms
- Prototype game piece pickup
- Lesson will cover prototyping using protopipe
- Include going over what objective a prototype is trying to achieve
- Make rev 2
- Lesson will cover the following:
- Use prototype to inform design
- Sketching a design
- Identifying key dimensions
- Groups will pick a prototype, and sketch out what a rev 2 will look like. After receiving feed back from the instructor, they will begin construction
- Rev 2 continued
- Lesson will start with progress updates from each group
- Groups will continue working on prototype
-
Problem definition & alternative research
04/03/2023 at 22:23 • 0 commentsFirst robotics competition is a high school program where teams around the world are given a brand new game the first weekend in January. Teams must design, build, and program a robot to play that game. Starting in March, they begin to compete. (These robots weigh up to 125 lbs)
As a mentor for a robotics team for the last 8 years, I've faced the same 2 challenges every year
- How to teach robotics
- How to keep students engaged when there's only one robot to work on
I feel like I've done something different every year to address these problems, but it's always been last minute. (this is probably a similar story for the mentors on most of the other 3600 teams) This year is going to be different though!
I'm going to write actual lesson plans, and have multiple robots for students to work on!
The multiple robots part is a challenge though, the drive base kit that's widely used costs $750 without any motors or other electronics. With motors and electronics the cost totals $2400
Item
cost
quantity
url
kitbot
$739
1
roborio
$485
1
Power distribution basics
$395
1
Radio bundle
$179
1
Cim motor
$46
4
Motor controller
$90
4
Battery
$55
1
Total
$2397
The meat of this project is going to be around identifying, implementing, and testing replacements for each of the previous line items. The potential impact this project can have can be looked at in different levels depending how which line item a replacement is found for.
- Kit bot chassis
- (70%) Impacts teams that already have multiple sets of the control system electronics
- Lesson plan
- Could impact 100% of teams by giving the mentors a starting point for how to teach their students in the off season
- Roborio, power distribution, radio, cim motor, motor controller
- Each replacement should be compatible with the rest of the system, which would allow teams to put together their own training kits based on what they already have.
- In reality, many teams will hesitate to spend the money on electronic components that aren't competition legal. They would rather put that money towards back up parts due to thing frequently breaking.
- The impact of this project could be far greater if I'm able to show that these replacements are just as capable as the current standards and get the FRC design committee to allow their use at competition.
For each line item, I'm going to outline requirements and list potential replacements
Kitbot chassis requirments
- 90-120 inch frame perimeter
- Can support ~80 lbs
- Can move at minimum of 5 ft/sec when at ~80 lbs
- Electronics mounting
- Battery holder
- Bumper mounts
- Can withstand side impacts from other robots
- Assembled in less than 3 hours by someone with no experience
The design of the chassis can be broken up into sections, I'm going to rate the options (1-3-5) with 5 being the best.
Frame
Option
Cost
robustness
complexity
Time for assembly
Reusability
Welded Steel tube
5
5
1
5
1
Steel tube gussets
5
3
3
3
3
Aluminum tube
3
3
3
3
3
T-slot aluminum extrusion
1
3
5
3
5
Wood
5
1
3
3
1
Gearbox
Option
Cost
robustness
complexity
Time for assembly
Reusability
Prebuilt gear box
1
5
5
5
5
Custom metal gearbox
1
5
1
3
1
Metal gear, 3d printed plate
3
3?
1
3
3
Entirely 3d printed
5
1?
1
3
1
Drive train
Option
Cost
complexity
maneuverability
4 wheel
5
5
1
6 wheel drop
4
4
3
Mecanum
3
5
4
Swerve
1
1
5
For the prototype I'm going to start with the following:
- T-slot frame - most expensive option, but the cost will still be significantly less that the custom machined plates used by the current standard. Also won't require me to drill any holes after they've been cut to length.
- Fully 3d printed gearbox - starting with the cheapest option, will progressively do upgrades until it stops breaking
- 6 wheel drop drivetrain - trying to match the standard kit
- Wheels - I'm need to do some exploring on how to make wheels cheaply
Roborio requirements
- Run off 12v
- Able to accept code
- Works with existing code libraries
- 10 pwm outputs
- 5 analog inputs
- 10 digital IO
- Can bus
- Not sure on the actual processing and memory requirements
- Able to interface with driver station
- Robot Signal light for safety
Options:
- Romi software running on RaspberryPi equivalent
- compatible with existing WPI software
- Needs daughter board with microcontroller to handle IO
- ESP32 or other microcontroller
- A lot of software work needed to be compatible with existing system
- May not have enough processing power
- Pure radio control module
- Not compatible at all with existing system, doesn't provide programming training opportunity
Going to start looking at Romi software on raspberry pi. Pis are still hard to come by so need to look at the alternatives.
Power Distribution:
- Main power switch
- 12v input
- X10 outputs with up 40 amp auto reset breaker
- 10A 12V output for roboio
- 5V output
This part will likely be best done with a custom PCB, but I did find some possible components on amazon (which means I can probably find cheaper options else where)
Power switch:
Fuses:
Power distribution
Radio Bundle:
I believe this can be gotten rid of completely since a Raspberry pi will have wifi built in.
Cim motor:
For DC motors at the 300W level, a cim is a pretty low cost option, and most teams already have a bunch in their shops. For the design I want to keep it compatible with a cim, but an alternative would be to use power wheels motor and gearbox. Not even close to the same amount of power, but provides a very low cost alternative and can be used to teach the same concepts.
Motor controllers:
BTS7960 is by far the cheapest option I've been able to find and use. The only problem is that it doesn't use the same control signal as the motor controllers used in FRC. I'm planning on using a rasperry pi pico to interpret the signal and control the BTS7960.
Battery
I'm currently planning on using 3s lipo batteries as the alternative, but want to make sure everything would be fine using the 12v lead acid batteries that teams already have.