Skip to main content

Show Posts

This section allows you to view all Show Posts made by this member. Note that you can only see Show Posts made in areas you currently have access to.

Messages - Lgbeno

1
Project development, ideas, and suggestions / Internet Connected Sensors and Plotting data
Thought that I would share my latest project, it is a web application written in Ruby on Rails but also embedded related.  The site is http://imp.guru it is basically a tool that can be used to graph data from a phant.io server also known as data.sparkfun.com. 
 
You can also browse other peoples data streams in the "Discover" section.  It also serves is a url shortener so that you can tweet a link (if you are into that) or just simple remember it so that you can type it into a friends phone or computer.
 
Some of my favorite streams:
 
http://imp.guru/f7
http://imp.guru/fa
http://imp.guru/f8
 
Personally I have http://imp.guru/f1, if is a Si7005 Temp and Humidity Sensor attached to a MSP430G2553 that is soldered onto a Anaren Air Booster pack, then this transmits the measurements back to another MSP430 that forwards the data to an Electric Imp then the Imp uploads to data.sparkfun.com.  Sounds worse than it really is.  Here's some pics:
 
Sensor:


Hub/Electric Imp:


Next step is making more sensors!
4
General discussion / Tek TDS544A For Sale
http://www.ebay.com/itm/171055976667?ss ... 1555.l2649

Selling my Tek TDS544A scope.  So far I have exchanged about 80% of the electrolytic caps and managed to get the Acq/Proc Interface test to pass but still falling short on some of the other tests.

This is a great scope and I did use it for a few years without issue, after taking some grad classes having a baby, I did not power it on for at least a year and when I fired it up last fall it no longer works.  I'm sure that there is something simple wrong with it, just don't have the energy to debug.

Also for most of my projects, I don't need the 500MHz bandwidth so maybe I would be better suited by a Rigol DS2072.

Any trade offers would also be considered but its a 7 day auction so think fast

-Luke
7
Tools of the trade / Attaching BGAs, CSPs and other Area Array Devices for Proto
I've heard about stencils and hand placement or the lockin type.  I think in general though most hobbyists avoid use of these packages.  Although I say go for it!  I like the enthusiasm towards working with these packages.  To me you should be able to do it but some stencil and paste will be needed and reflow.

My biggest sticking point for these packages is that the pcb technology to fan them out and route power will at minimum require 4 layers.  I try to stick to 2 layers for cost reasons.
9
Project development, ideas, and suggestions / Idea for FPGA trainer "deluxe"
Personally, I'm a big fan of the Terasic DE0 Nano board.  It has a pretty large FPGA, a ram, adc and some sensors, LEDs, buttons.  It also has the built in byte blaster and all of the power supplies. That would really let you focus on the other value add like more switches and interfaces which could be implemented with a daughter card on the multiple pin headers.
11
Project development, ideas, and suggestions / Re: Sensorless Brushless DC Motor Drive
Hey Bearmos,

If you haven't read/referenced it already, there is a excellent app note on gate drive techniques for FET's

It's true that Vgss is the limiting factor my current scheme so unfortunately the upper end of my Half bridges is around 18V like you mentioned.  For the most part that is fine for battery power applications but certainly not for driving 24V rated motors.  I think this is one of my bigger lessons learned on the project.  I wanted to use discrete parts instead of a monolithic chip for the educational value but I found that more sophisticated gate drive methods required more and more transistors or I need to have so many voltage rails to address the Vgss limitation that you mentioned.  All in all I'd say that a good next step would be to use an all NMOS half bridge with a chip like the Fairchild FAN7888MX with bootstrapping and adding lower gate drive supply.

I agree though, these Diodes Inc FETs have great specs for the cost.  Just a word of caution on the Simulation, I haven't touched in in quite awhile, it probably has some problems.  I tried really hard to make TINA TI work for me but I much prefer LTspice.

About the motors, I've tried 3 different motors so far.  The first was a Maxon 339282 which is a very nice motor and the BEMF looks almost exactly like what they show in the app notes.  It is also very robust to imperfections in the exact timing of commutation but I'm sure efficiency takes a hit if it isn't dialed in.  There are just a few scope traces on github in the DOCS/ScopeTrace directry, maybe I can dig up a few more.  The other two motors are RC hobby motors, one is the Exceed RC 75M57 OPTIMA 450 and the other is BR2730 from KEDA.  These two motors have significantly higher Kv so they are much more sensitive and tend to stall out if I'm too late on the commutation.  This is really what is prompting me to move to a fast ADC sample rate to get more resolution on the exact time of commutation. 

In general though, the concept of the flux integration technique is that there is one parameter that the algorithm needs to to spin the motor (flux threshold) so in theory, each of my 3 different motors would have a different threshold parameters but once this number is known, everything else works the same and is more robust to changes in motor load and speed.  The python+QT GUI has a slider to adjust this threshold so it's pretty easy to explore and find the right number.  Screen shot attached you can also see the sampled data from the ADC, BEMF looks nice and linear.  This is with the that Maxon motor.  Sorry, I hope that answers your question, let me know if not.

By the way, anyone interested in bread boarding this?
12
Project development, ideas, and suggestions / Re: Sensorless Brushless DC Motor Drive
Wow, I was really surprised when I went to DP today and saw the project linked right there on the front page!

Thanks for the comments, they are all well taken. 

Quote
what would you estimate to be your assembled cost of the BLDC Boosterpack that you designed?
In regard to assembly cost, at the moment I've been hand soldering the first round of boards.  This takes a decent amount of time (20-30 min per board) since there are quite a few discrete components (~50) and they are all quite small.  For the next batch, I have a solder stencil and we're going to use paste, hand place components and reflow them in a toaster oven, hopefully this will drop the amount of time significantly.  I'm not a pro for pricing models of assembly but when I started looking at pricing, I went on the conservative side and figured it woud be $5-$10.  Besides assembly, theres cost of components, shipping them all around the place and the tooling for stencils and things like that.  Surprisingly, the BOM cost is the smallest part of the pie on how I got to $35.  I'm actually surprised how much a static bag and cardboard box costs in relation to some of the other components!  In the spirit of open source, I definitely don't want to set pricing in a vaccuum, would be interested to hear everyones thoughts on that but hopefully that doesn't become the focus of this thread.

Quote
why "booster" ? I don't see nothing being boosted :) .. maybe you should incorporate ESC into name of your project for easy search
Very true, I'm certainly not boosting a voltage rail or anything like that (although you could probably use this as the power electronics for a boost/buck converter with some creativity).  Booster simply comes from "Booster Pack" which is what TI calls add on cards for their LaunchPad kits.  Adding ESC is a good point, my goal is exactly that, to make a open source ESC, particularly one that uses the BEMF integration technique instead of the zero crossing method like a traditional ESC.  The other goal is to make it inexpensive and compact so that we can someday see a quadcopter, RC car or airplane with a fully integrated controller + drive(s) all on one board.  I really dislike excessive wire harnesses :)

Quote
you might want to add ntc to monitor temperature of the board (fets) and another one to monitor temp of the motor
Now that wouldn't be very Dangerous :)  Actually good point, only thing that I'll say is that the extra ADC pins are unfortunately consumed by the UART so thats a bummer.  I'm hoping the addition of current sense will be two fold, one is for control but also for protection to limit the strain on the FETs and motor.

Quote
Would be nice if you share the source files (for pcb/schematic/firmware...), there's not many ESC's out there that are open source so it might go wild fast
All source files are available on github  For my initial post, the forum didn't like me including hyperlinks as a spam protection.  I would be great if it goes wild fast (both figuratively and most important literally).

-Luke
13
Project development, ideas, and suggestions / Re: Web Platform v2?
Well I was going to suggest some Stellaris Cortex M3 parts with the built in Ethernet Mac/Phy and USB OTB but it looks like they are NRND :/ Those were really cool parts and there was also a POE reference design for the family.
14
Project development, ideas, and suggestions / Sensorless Brushless DC Motor Drive
Hi Everyone,

I thought that I would share my project on the forum.  I call it BLDC Booster.  It is a booster pack for the MSP430 LaunchPad that allows for sensored or sensorless control of a brushless DC motor.  It is open source hardware & firmware under Creative Commons Attribution Share Alike license. 

I designed the PCB in Design Spark and prototyped fabs at iTead.  Currently I have the first prototypes and motors are spinning using my alpha firmware and custom GUI written in Python+QT.  For slower motors, I think that it works pretty decent but currently I'm having some difficulty spinning high Kv motors under no load conditions due to my PWM method (unipolar) and slow ADC sample rate (20 kHz).  Moving forward, I see not technical reason why I cannot leverage the full sample rate of the MSP430, just need more time to iron out the code.  Also in version 2 I added current feedback via a lowside shunt resistor and TI INA199.

My current scheme for sensorless commutation is using BEMF integration and flux thresholding based on the theory of operation for TI's InstaSpin technology however my libraries are 100% written from scratch because the InstaSpin code does not port well to the Value Line series of MSP430's and is somewhat closed.  My source is licensed under BSD so everyone is welcome to hack away.

All files are available on github. There's still a lot of work to do on the firmware side but I'm pretty happy with the hardware.  Currently I have a few more v1 boards on hand but just ordered 50 of the v2 fabs which I plan on building up on Jan 9th with my friend who owns a CM service.  I'd like to offer them for sale and was thinking that I would ship them USPS to anyone in the US for $35.  I do have a connection with a motor vendor in China that if there is sufficient interest, we could do a order.  Baseline motor would cost an additional $9.  Contact me if you are interested.

Some pictures attached, more info is on github.  Looking for feedback on the design and anyone interested in helping out with code development.  Ian's comments are always welcome and by the way, nice interview on theamphour it is my inspiration for sharing this design on the forum.

-Luke

( ! ) Fatal error: Uncaught exception 'Elk_Exception' with message 'Please try again. If you come back to this error screen, report the error to an administrator.' in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
( ! ) Elk_Exception: Please try again. If you come back to this error screen, report the error to an administrator. in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
Call Stack
#TimeMemoryFunctionLocation
10.02102440192session_write_close ( )...(null):0
20.02132571768ElkArte\sources\subs\SessionHandler\DatabaseHandler->write( )...(null):0
30.02132572544Database_MySQL->query( ).../DatabaseHandler.php:119
40.09202711288Database_MySQL->error( ).../Db-mysql.class.php:273