posts tagged with the keyword ‘electronics’

2017.09.27

Moxie

A large part of the Power Racing Series is Moxie. Moxie is best described as, being awesome. The crowd gets to vote for your car using the Moxie Board. Each button press equals a vote. Being fast is one way to get points, but another way is by being awesome… so, Moxie.

Above you’ll see a photo of the official Moxie Board used by the series. Since we also had a PPPRS race during Maker Faire Milwaukee, which overlapped the race in New York, we had to build our own Moxie Board, so here’s what we did…

The Moxie Board

It looks fairly similar, but it’s a bit smaller and lighter than the original, and it’s got 24 buttons instead of 30 (though I believe the original was recently expanded to have that 30 buttons. Who knew there’d ever be that many cars in a race!)

I got some Coroplast from Midland Plastics for super cheap, and they didn’t have any wide enough, so the black strip running down the center is gaff tape used to hold two pieces together to be wide enough. I then found some scrap wood in the shop at work which was long enough, but too skinny to be used for anything else, and built a simple frame with some small blocks of HDPE in the corners to hold it all together. (I was told the reduced weight of this Moxie Board was a big plus.)

The front is screwed into the wood frame, and the back is held in place with some VELCRO┬« hook and loop so we could open it to get to the electronics…

As for the inside and the electronics, while the original uses an Arduino Mega with a Bluetooth module to send real-time updates to Patrick’s Android phone which is running some special app, I chose to do it differently.

moxie-board-04

I’m using a Teensy 3.5 which has plenty of input pins and a built-in MicroSD card slot. The way it works is simple, each button represents a number from 1 to 24, and when pressed, the Teensy gets the value of every button, with the ones not being pressed equal to 0 and the one being pressed equal to 1, and then writes it to a file called MOXIE.csv. When the race is over you just put the MicroSD card in a card reader and import the CSV file into a spreadsheet and grab the last row. (Hopefully your spreadsheet is set up with the names of the cars in the corresponding columns.)

In testing, this all worked fine, but obviously the real world had to come along and crush my hopes and dreams…

moxie-board-05

Failure #1: Because the Teensy is a low power device, it doesn’t draw much power from the USB battery pack we were using. I’ve seen this before, so I use a battery pack with a built-in LED “flashlight” that stays on, as long as you press and hold the button when turning it on. I told this to two people, but forgot to write instructions to put inside the Moxie Board, so there’s a chance this was not done properly and power was lost. (There is an indicator LED that lights up when a button is pressed, but not a “POWER ON” LED which would have helped… maybe.

Maybe Failure #2: It could be that my code isn’t quite right. I do not have the most recent code that the official Moxie Board is running, but I have an older version that may be close. My code is a little different, but should yield the same results… I think. This is worth checking on.

I also do not have a good way to attach Moxie Labels, so they are just attached with tape or Hook and Loop for now. Ran out of time for anything better. :/

One more note! In the photo there’s a bunch of green wire and LEDs attached to the front of the Moxie Board. Those were added for the night race. All the actual wiring for the Moxie Board is located on the inside.

moxie-board-03

I’ve heard of one other group working on a Moxie Board that will use a Raspberry Pi, which I thought about doing as well, but ended up choosing a Teensy instead. As we add more races, we’re going to need more boards, so I’m hoping we see more ideas and eventually come up with even better ideas. (Note that I wanted to stay simple because simple gets done while over-complex builds, while fun, don’t always get finished, or work properly. But then, who am I to talk!?)

2017.05.29

PCB

Hey, it’s only been six months since my last post about motor controllers and the Power Racing Series so I guess it’s time for an update! If you missed it, I’m working on a tiny electric vehicle that can serve as a reference for teams of beginners to build their own.

Controller

In the last post I talked about a cheap motor controller that required an expensive throttle and alluded to a method of using a cheaper throttle… here is that method.

I started by asking questions on the Power Racing Series Google Group, and people much smarter than myself offered advice, and that’s where I learned about digital potentiometers. I ended up testing my idea with help from this tutorial and eventually got an MCP4131-104E/P-ND digital potentiometer (for less than $1.00) and paired it with an Arduino Nano that was less than $2.50 to create a converter that allows a cheap throttle to be used with a cheap controller.

If at any point you feel like saying “Hey dummy! You should have done it this way!” feel free to leave a comment. Most of my crazy pursuits involve me learning a lot along the way, and this is no exception, so I’ll keep going.

Controller

After I had a working prototype on a protoboard I decided to design a PCB because I’ve been working on getting better at PCB design for the last two years now, and it’s sort of fun (and challenging!) This is the most complex board I’ve worked on so far, and of course, mistake were made…

First of all, see those wires coming off the board? There should be screw terminals there, but I was unaware that the holes were the wrong size and the pins of the screw terminals did not fit. Argh… wires will do for now.

Controller

Everything wired up and ready to go! Except, it didn’t go… Seems I managed to not quite route everything the right way. Back to the drawing, and tracing all the connections with a meter, and I discovered a connection that shouldn’t be there…

Controller

…but that’s what Dremels are for! I was able to cut the trace and get it working. Back to the computer to make a few changes to the PCB. (And yes, I am still using Fritzing. I’ve gotten used to it, and know how it works, so… okay then.)

Controller

A few weeks later I got a new version from our friends at OSH Park and this one fixed the issues and worked! I should still get similar screw terminals but hey, it does what it should do, so that’s something.

You might notice some of the analog pins and some ground connections broken out at the front edge of the board. There are for future enhancements. It would be fairly easy to add in “cruise control” (for parades) or a speed limiter, perhaps with a keyed switch, to allow kids to drive the vehicle safely. (Again, people smarter than me.)

Controller

Whomp! Here’s my “breadboard” showing everything. Batteries to power the motor, and a buck converter to drop the voltage to 12v for the Arduino and a cooling fan. The throttle connected to the converter and then to the motor controller to control things. We’ve also got a DPDT (double-pole, double-throw) switch in there to allow for forward and reverse to the vehicle, and a kill switch, fuse, and voltage meter. Basically all this will need to be jammed into the vehicle to control it. (Don’t worry, we’ll be using larger batteries, thicker wire, and a larger motor.)

Controller

Here’s the controller with a cooling fan mounted to it. I’ll provide files to laser cut or 3D print the mounting pieces, or templates to cut by hand, which is totally doable. (I learned the hard way last year that if not properly cooled the capacitors on these controllers can blow.)

Controller

I also added a bright blue LED to the board (you can choose another color) to indicate when it’s receiving power. Another suggestion I got from someone. I’m sure there is still room for improvement (like, you know, diodes) but hey, it works and I look forward to testing it.

2016.12.04

Teensy BOB 1.4

The folks at Seeed Studio got in touch with me about their Fusion PCB Service and asked if I wanted to try it out. I’ve ordered stuff from Seeed Studio over the last five years or so, and I’ve never been disappointed with their products, and since they offered a coupon to save on an order, I decided to give it a try.

PCB Options

My previous PCB was the Teensy LC BOB v1.3. I ended up making a very small revision and released v1.4, which is the board I used for this Fusion PCB order. I’ve ordered these from OSH Park and they turned out good, so I wanted to compare ordering from Seeed Studio.

I should mention that I am not an Electrical Engineer, but a maker & hacker who learns things by trial and error. I’ve managed to get lucky with the PCBs I’ve ordered and part of that success has probably been due to the sensible defaults that OSH Park uses. By comparison, when uploading my Gerber files to the Fusion PCB service, I was a little overwhelmed. (See image above.) The choices… so many choices! While I didn’t know exactly what every option was, it was easy to choose them and see how it affected the price. Many options caused the price to go up by 2 or 3 or 10 times the amount. This made it easy to decide what not to choose. The one choice that is nice are the colors. OSH Park boards are purple, but you can get Fusion boards in green, red, yellow, blue, white, or black, which is great.

The one tricky form value you need to deal with is Dimensions. By default it is set to 70mm by 70mm, which comes out to $9.90 for 10 PCBs (though they seem to be changing that to 100mm by 100mm for $9.90, slightly better pricing.) You need to input the dimensions of your PCB as they are not detected by the Gerber files you upload. It’s a bit confusing… I guess for small PCBs you can panelize them. I should learn how to do that as it seems you can save money / get more PCBs by doing it.

The $9.90 is the base price for 10 PCBs, but adding more PCBs affects the total cost, but not by much for small boards. I could get 100 of my ATtinyNoisy boards for $18.32. That’s 10 times the number of boards for just twice the price! For the Teensy LC BOB v1.4 it’s $9.90 for 10 and $49.69 for 100. Economies of scale, yo.

Gerber View

One of the things that was missing when I ordered my PCBs was the preview of the board when I uploaded it. Well, either I missed it, or it’s a new feature that was recently added. Here’s what the Gerber preview looks like for my PCB in Fusion.

Teensy BOB 1.4

Teensy BOB 1.4

The boards turned out great. They look amazingly well done, and checking the 20 boards I received they all looked identical.

I actually placed two orders, for the first one I chose the fast shipping option, and the boards were completed within just a few days and shipped from Shenzhen, China to Milwaukee, Wisconsin in two days. Wow. That was for DHL shipping at about $20. Not bad at all.

The second order I chose the cheap shipping option, which was just $10. The boards were completed on November 18th (two days more than the first order) and were shipped, but as of December 4th (16 days later) I still have not received them. They were sent via Singapore Post and should be delivered to Rosemead, California, and then transferred to the USPS for delivery to me. I’m hoping they show up soon. (Update: They showed up on December 15, 2016.)

Teensy BOB 1.4

In summary, I was extremely pleased with the quality of the PCBs I got from the Fusion PCB Service from Seeed Studios. There are a lot of nice options when ordering, and volume pricing can make a lot of boards really cheap. The shipping costs and options are something to consider. With OSH Park the free shipping is nice, but of course you do end up waiting a while for the boards to be produced. OSH Park does have something called ‘Super Swift Service’ which adds $89 to your total. Oh, Fusion also has an “expedited” service that makes your boards in 24 hours, and that’s a $199 charge.

If I get to the point where I need a lot of PCBs for a project, or plan to sell them, Fusion would definitely make sense. If that’s what you need (perhaps for a Learn to Solder kit?) give Fusion a try.

2016.11.13

Stair Car

I’m going to be posting a bunch about a 2017 build for the Power Racing Series, and along the way I’ll be highlighting some parts of the build and explaining things. We’ll start with the motor controller, because being able to control the speed of a motor is crucial to building an electric vehicle. (Yes, we’re building an electric vehicle. Check out powerracingseries.org for more on this whole thing.)

DC Motor

Disclaimer: In some parts I’m going to keep things fairly simple.

Let’s start with some basics. A DC (direct current) motor spins when connected to power. In the diagram above we’re using a small motor and a 9 volt battery. Connect them together and the motor starts to spin. If you flip the wires (as in red wire to yellow wire, and black wire to green wire) the motor will spin in the opposite direction. This is how “brushed” DC motors work. There are also “brushless” motors, but we won’t get into those.

I sometimes like to refer to DC motors as “Don’t Care” motors. Want it to go the opposite direction? Flip the wires. Want it to go a bit slower? Give it a lower voltage. (Again, we’re simplifying things.)

Motor Controller

Here’s a motor controller. It has a connectors so you can connect a battery and a motor. You can’t make the motor go in reverse with this controller, but that’s okay for now. You can control the speed of the motor, but we don’t do it by lowering the voltage we do it by using “pulse width modulation”, commonly referred to as PWM. PWM is a method of controlling motors, lights, and other things by turning on and off the power really quickly. (Here’s a SparkFun article about PWM.) If you’re wondering why we don’t just lower the voltage (perhaps by raising the resistance) to make the motor go slower, read Why is PWM used to control DC motor speed instead of using a variable resistance?

Motor Controller

OK, so this motor controller comes with a potentiometer. When you spin the potentiometer is varies the resistance from 0 to 100K ohms. This get translated by the controller and feeds the appropriate PWM signal to make the motor go somewhere between not moving at all and full speed. The 100K pot also has two extra wires which work as a simple switch to turn the motor controller on and off.

Before we move on, a bit more about this controller. It’s from China, and it’s really cheap. I only recently discovered it’s a “Leadrise” controller after someone provided this Amazon link. You can find these on eBay for under $13. (Damn, that’s cheap!) I’m going to focus on doing a low-cost build, so keep that in mind along the way.

Throttle

The 100K pot is a nice way to test the controller and make your motor spin fast and slow, but you aren’t going to want a little potentiometer on your electric vehicle! Let’s find a throttle. Now, motor controllers of this variety typically require a “0-5V” throttle, or a “0-5K throttle”. The good news is, the 0-5V throttles are really cheap, the bad news is, this controller requires a 0-5K throttle, which are not cheap.

Magura makes a nice 0-5K throttle. You can find them for around $50 or so. There’s also a 0-5K thumb throttle that’s a bit cheaper. Any of these 0-5K throttles will work fine with this controller, and if you can decipher which wires are which you can cut off the 100K pot and wire in the 0-5K throttle. Easy, right!?

In a future post we’ll get into connecting up the throttle, and after that we’ll look at adding in reverse, and eventually get into building our own throttle controller that will allow us to use very cheap 0-5V throttles with this controller.

See Also: Controlling the Controller Cheaply

2016.11.05

Cameron

Alex

Katrina

Maks

Megan

Sadie

Stefanie

Sarah

Malcolm

Raven

Ali

Chance

We’re already half way through the semester and finished our third assignment for Electronics and Sculpture last week. Assignment 3 requires analog input and output for the project. (Assignment 1 is purely digital, and Assignment 2 requires analog input for control.) And yes, the class is called “Electronics and Sculpture” but it could just as easily be named “Arduino for Artists”.

Projects have varied from very interactive to installations to mostly sculptural with some electronics added in. I find that students do the best work when they can take what they are learning in class and combine it with their own practice, or what they are learning in other classes. The Digital Fabrication students definitely have an advantage here, and I wish all of the students had access to digital fabrication tools, though we just wouldn’t have time to cover it all in the 318 class. (That’s not to say the work of non-Digital Fabrication students is lacking in any way, and I’ve seen some great work using very simple material and tools. As always, art is a combination of things, including concepts, themes, ideas, technical skills and abilities, and more.)

We’re currently in the middle of the midterm project, and things are coming together quite well. Critique is in two weeks, and after that we launch right into the final project. (Since there isn’t an Arts+Tech Night this semester, we’ll probably just push the final critique onto the date that our final exam is scheduled for.)

« Older Entries |


buy the button:

Buy The Button