robotics company robot company  

Go Back   Trossen Robotics Community > Robotics > Project Showcase

Project Showcase Have a project that you're dying to pimp? It doesn't matter if it involves robotics, RFID, HCI, or what, as long as you think it's cool, pimp it here! Need more space for pics/videos email us:)

» Navigation Menu
Homepage
Forums
TRC Tutorials
Member Blogs
Data Center
Image Galleries
Links Directory
Contact Us

Shop Robotics
» Introduction Tutorials

» Data Center Entries
KRG1.exe
By Droid Works
08-05-2008 11:03 PM
R Turn.RCB
By Droid Works
04-16-2008 06:08 PM
Microswitch
By webgeek
01-01-2010 11:23 AM
PittPatt Face Tracking
By Matt
05-08-2008 05:05 PM
Drawings of Arduino...
By Migs
10-23-2009 10:04 AM
» Trossen Robotics Blog
Trossen Robotics Announces the Grand Ope...
Amazing Robotics Presentation From RoMeL...
Lego NXT Scorpion Says: “Back Off Mah ...
Wi-Fi Warhog Mayhem!...
Sparkfun Free Day Video!...
» ROBOTS DREAMS
Tough year ahead for robot toys?...
Remote controlled robot protects police ...
The 15 ways science will kill us all...
Popular Mechanics Febuary issue focuses ...
Paris meeting offers rare chance to expl...
» Plastic Pals
ï½¥The Imaginarium of Dr. Parnassus...
Fujitsu’s Robot Kiosk Has Funny Face, ...
Minirobot’s Metal Fighter Gets Gaming ...
Willow Garage’s Mailbox Flooded for PR...
Hardworking Hobbyist’s Robotic Hands...
» robots.net
Cleatus Robot Toys Seized for Lead Conta...
Swisslog SpeciMinder and RoboCourier Rob...
Bacteria Turn Microgears...
Weird Force One: Robot-a-day Mission...
Random Robot Roundup...
» BotJunkie
Intel Needs To Make More Jeffreys...
ChIMERA Whole Skin Locomotion Robot...
Shirt: The Heart Goes On...
Robonaut 2 Functions Like Astronauts, Ha...
Earthquake Detecting Robot Will Save You...
» GoRobotics.net
Hello world!...
NASA Says Spirit Rover Stuck for Good...
JANUARY GIVEAWAY – 10 Years of GoRobot...
AR.Drone – iPhone Controlled Quadrocop...
Top 10 Robots of the Past 10 Years – R...
» Join Us Elsewhere!






» Stats
Members: 3,505
Threads: 2,480
Posts: 33,193
Top Poster: Adrenalynn (5,312)
Welcome to our newest member, Chicagowildcard
Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 09-13-2007
elcray
elcray is offline
Vacuum Tube
 
Join Date: Aug 2007
Posts: 18
Rep Power: 8
elcray is on a distinguished road
USB-Q, the automated BBQ Grill temperature control



__________________________________________________ _____________
UPDATE: For more information on the status of this project visit us at:
www.geekwithfire.com
__________________________________________________ _____________


My simple little project seems to pale in comparison to most of the folks work here, but here goes:

Project:
Automatically regulate the temperature on my BBQ smoker by constantly reading the internal pit temperature and making necessary adjustments to the damper; thereby increasing or reducing the inflow of air to fuel the charcoal/wood mix.

Details:
I/O: Phidgets 8/8/8
Inputs: Standard Meat Probe Thermistor
Outputs: Phidgets Servo controller, Futaba Servo
Software: Custom VB.NET application

Software Process:
Thermistor generates resistance with temperature change. Temperature change is converted into voltage drop. Voltage drop is converted to temperature (via a calibrated lookup table in a database). Temperature is bounced off of a PID loop every seconds which makes needed adjustments to the servo position.

Benefits:
I am now able to sleep at night while my smoker is going on those long cooks (sometimes cooks up to 2o hours). As long as I keep fuel in it, it maintains temperature perfectly. If for some reason the temperature exceeds the adjustable threshold, an audible alarm will sound, notifying the operator of a required intervention. In addition, and not shown on the version of the video, I am able to set the desired temperature of the particular meat I am smoking. When the desired temperature is reached, the smoker shuts down, to avoid burning my dinner!

In addition to controlling the smoker, I also capture data points every 20 seconds so as to chart the accuracy of a long smoke (see the attached image; one of my original tests, that does have some large variations in temperature).

http://www.jegreer.com/images/forum/SM/temp1.jpg


http://www.youtube.com/watch?v=VgG6cYH72lo


Thank you for your consideration,

Josh Greer
www.geekwithfire.com

Last edited by elcray; 08-27-2008 at 05:29 PM. Reason: fixed youtube video
Reply With Quote
  #2  
Old 09-14-2007
Alex's Avatar
Alex
Alex is offline
trbothead - TRC admin
 
Join Date: Sep 2006
Location: Carol Stream, Illinois
Posts: 1,686
Blog Entries: 8
Images: 118
Rep Power: 77
Alex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant future
Re: USB-Q, the automated BBQ Grill temperature control

That's a pretty sweet project Josh! It's simple in concept sure, but it fills an interesting niche. Great work! How much you selling these for

Thanks for the submission!
__________________

“In the long history of humankind (and animal kind, too) those who learned to collaborate and improvise most effectively have prevailed”
- Charles Darwin

New to the TRC?
Customize Your Profile -- Post To and Customize Your Blog -- Create Your Own Photo Album -- Create a Tutorial
Reply With Quote
  #3  
Old 09-14-2007
Dave's Avatar
Dave
Dave is offline
Datamonger
 
Join Date: Sep 2006
Posts: 342
Images: 1
Rep Power: 23
Dave is a jewel in the roughDave is a jewel in the roughDave is a jewel in the rough
Re: USB-Q, the automated BBQ Grill temperature control

Nice. If it allows you to cook a brisket without putting your life on hold for a day, I'm all for it. Just out of curiosity, what kind of smoker do you have?
Reply With Quote
  #4  
Old 09-14-2007
elcray
elcray is offline
Vacuum Tube
 
Join Date: Aug 2007
Posts: 18
Rep Power: 8
elcray is on a distinguished road
Re: USB-Q, the automated BBQ Grill temperature control

Alex:
I haven't settled on a price yet. All depends on if I ever quit tinkering with it! Right now I'm adding a "logical rules" process so the user can establish a logical cooking process based on feedback from various inputs. At the same time, I'm coding around the concept of controlling multiple smokers within the same instance of the program. With that said, I would love to be able to program around an unknown amount of phidget devices, but I just can't seem to figure it out. Yet, I plug away.

Dave:
The smoker is a Chargriller Pro, with the Side Fire Box; typically full of Royal Oak lump charcoal and 1 year old seasoned apple chunks from my personal orchard.

All:
Thanks for the comments.

Josh
Reply With Quote
  #5  
Old 09-17-2007
Alex's Avatar
Alex
Alex is offline
trbothead - TRC admin
 
Join Date: Sep 2006
Location: Carol Stream, Illinois
Posts: 1,686
Blog Entries: 8
Images: 118
Rep Power: 77
Alex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant future
Talking Re: USB-Q, the automated BBQ Grill temperature control

Quote:
Originally Posted by elcray View Post
Alex:
All depends on if I ever quit tinkering with it! [...] I would love to be able to program around an unknown amount of phidget devices, but I just can't seem to figure it out.
I hear ya about tinkering! I'm always trying to perfect the applications that I build

About the "unknown amount of phidget devices"; I see that you are using VB.NET. Is this perhaps VB.NET 2005, or even VB.NET 2005 Express Edition? The reason why I ask is that I was working on what I called "Dynamic Phidgets" in C# 2005 a while back which used what are called Generics which are unique to Visual Studio 2005 and 2005 Express Edition.

The purpose of "Dynamic Phidgets" was to ignore how many Phidgets were connected to a single machine, and just keep storing them in a Generic Collection as they are attached and removing them when they were detached. Then, I can do what I want with them while they are active in the application I built.

Generics are incredibly powerful, and if you are not familar with them, I highly recommend on reading up on them here, here and here. There are a ton of other examples, but this will help you get started in understanding them if you don't already. Sorry, but these are all C#, but if you understand VB.NET, you understand C#. All of the concepts are the same, the only difference is syntax.

Basically what I did to create Dynamic Phidgets is create a Generic Dictionary Phidget object with the key of the Dictionary being a long variable which will be the serial number of each Phidget:

Code:
private Dictionary<long, Phidgets.Phidget> phidgetDictionary = new Dictionary<long, Phidgets.Phidget>();
Then, I created a new Phidget Manager object, and intialized it:

Code:
private void InitializePhidgetManager()
        {
            PM = new Phidgets.Manager();
            PM.Attach += new Phidgets.Events.AttachEventHandler(PM_Attach);
            PM.Detach += new Phidgets.Events.DetachEventHandler(PM_Detach);
            PM.Error += new Phidgets.Events.ErrorEventHandler(PM_Error);
            PM.open();
        }
The Phidget Manager object was necessary because you never know what type of Phidget a user connects to the computer and you need to account for this

Finally, I hooked the Attach and Detach events of the Phidget manager and ran checks to see if they existed in the Generic Dictionary Class. If they did/didn't I added/removed them respectively:

Code:
void PM_Detach(object sender, Phidgets.Events.DetachEventArgs e)
        {
            if (phidgetDictionary.ContainsKey(e.Device.SerialNumber))
            {
                phidgetDictionary.Remove(e.Device.SerialNumber);
                EventLogger.LogEvent("Object Deleted from Dictionary:" + e.Device.GetType().ToString() +
                    " Serial Number:" + e.Device.SerialNumber);                
            }  
        }

        void PM_Attach(object sender, Phidgets.Events.AttachEventArgs e)
        {
            if (!phidgetDictionary.ContainsKey(e.Device.SerialNumber))
            {
                phidgetDictionary.Add(e.Device.SerialNumber, e.Device);
                EventLogger.LogEvent("Object created and added to Dictionary for:" + e.Device.GetType().ToString() +
                    " Serial Number:" + e.Device.SerialNumber);

                e.Device.open();
            

                e.Device.waitForAttachment(500); 

            }            
        }
NOTE: I worked with Phidgets to get the e.Device returned as the actual object itself that it found. This way, you can run a check on the Type of Phidget object that was found and do what you need to with it

This will allow you to ignore the fact of how many Phidgets get connected to the computer. Then, you can simply roll through the Dictionary to find the Phidget objects you have added and do what you need to with them!

I hope all this made sense. Let me know if you have any questions
__________________

“In the long history of humankind (and animal kind, too) those who learned to collaborate and improvise most effectively have prevailed”
- Charles Darwin

New to the TRC?
Customize Your Profile -- Post To and Customize Your Blog -- Create Your Own Photo Album -- Create a Tutorial

Last edited by Alex; 09-17-2007 at 10:54 AM. Reason: clarification
Reply With Quote
  #6  
Old 09-17-2007
elcray
elcray is offline
Vacuum Tube
 
Join Date: Aug 2007
Posts: 18
Rep Power: 8
elcray is on a distinguished road
Re: USB-Q, the automated BBQ Grill temperature control

Quote:
Originally Posted by Alex View Post
Basically what I did to create Dynamic Phidgets[....clipped....]
I hope all this made sense. Let me know if you have any questions
Thanks Alex for all of the information. I'll read up on the 3 sites you mentioned and give it a shot.

Thanks again,

Josh
Reply With Quote
  #7  
Old 09-17-2007
Alex's Avatar
Alex
Alex is offline
trbothead - TRC admin
 
Join Date: Sep 2006
Location: Carol Stream, Illinois
Posts: 1,686
Blog Entries: 8
Images: 118
Rep Power: 77
Alex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant futureAlex has a brilliant future
Re: USB-Q, the automated BBQ Grill temperature control

No problem, good luck!

I had a little bit of a hard time wrapping my head around Generics at first, so don't hesitate to give me a shout if needed. Please keep these sort of questions though via email.
__________________

“In the long history of humankind (and animal kind, too) those who learned to collaborate and improvise most effectively have prevailed”
- Charles Darwin

New to the TRC?
Customize Your Profile -- Post To and Customize Your Blog -- Create Your Own Photo Album -- Create a Tutorial
Reply With Quote
  #8  
Old 04-14-2008
elcray
elcray is offline
Vacuum Tube
 
Join Date: Aug 2007
Posts: 18
Rep Power: 8
elcray is on a distinguished road
Re: USB-Q, the automated BBQ Grill temperature control

Quote:
Originally Posted by Alex View Post
No problem, good luck!

I had a little bit of a hard time wrapping my head around Generics at first, so don't hesitate to give me a shout if needed. Please keep these sort of questions though via email.
It's been a while since I've posted, but wanted to write an update on the status of my project; namely the process of adding an unlimited number of phidgets to a project at runtime. I read up on the topics listed above, and I'll be honest, much of it was above my head. I'm glad it was, because it forced me to start from scratch. I now have an application that will allow me to add an unilmited number of Thermocouples, InterfaceKits, and Servos by using Classes and Controls. I wrote Visual Studio UserControls for each of the items listed above. At runtime, I simply add the controls to the application, and assign the serial number. I still have much of the user interface to retool, but the infrastucture works very well. Because of the infrastructure change, I can operate an unlimited number of BBQ pits, using an unlimited number of servos, thermocouples, and thermistors. Here's a screenshot of the rough application update.

Reply With Quote
  #9  
Old 04-14-2008
Matt's Avatar
Matt
Matt is offline
Robonerd Wrangler
 
Join Date: Sep 2006
Location: Chicago Illinois
Posts: 649
Images: 7
Rep Power: 51
Matt has a brilliant futureMatt has a brilliant futureMatt has a brilliant futureMatt has a brilliant futureMatt has a brilliant futureMatt has a brilliant futureMatt has a brilliant futureMatt has a brilliant futureMatt has a brilliant futureMatt has a brilliant future
Re: USB-Q, the automated BBQ Grill temperature control

We are working on the new downloads area where there will be a section for demo apps / widgets. Would you be willing to post your Phidget controls in there for others to use? They would be a great tool for many others I'm thinking.
__________________
Matt Trossen - Say hello on the introduce yourself thread!
Reply With Quote
  #10  
Old 04-14-2008
elcray
elcray is offline
Vacuum Tube
 
Join Date: Aug 2007
Posts: 18
Rep Power: 8
elcray is on a distinguished road
Re: USB-Q, the automated BBQ Grill temperature control

Quote:
Originally Posted by Matt View Post
We are working on the new downloads area where there will be a section for demo apps / widgets. Would you be willing to post your Phidget controls in there for others to use? They would be a great tool for many others I'm thinking.
Sure. Just let me know when you're ready. I will have to say, it's pretty basic stuff though. But maybe it might spark someone's imagination.
Reply With Quote
Reply

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Kondo web page translated. Droid Works Humanoids, Walkers & Crawlers 4 10-06-2007 06:49 PM
Contest Entry Fuel Burner Control System BillW Project Showcase 4 08-03-2007 04:54 PM

Powered by vBadvanced CMPS v3.2.0

All times are GMT -5. The time now is 05:07 PM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.