Google Analytics

Monday, April 23, 2012

Banjo's Best Crab Cakes - Ever 2012!

Banjo's Best Crab Cake 2012 Award goes to.....

While hundreds, if not thousands, of coveted dining establishments anxiously await the Banjo's 2012 Best Crab Cake Award announcement, it was a late entrant that swept the judges taste buds on the way to the alter!

Coco's on Tybee Island GA, and which is located here on Google Maps!  Wonderful!  We've eaten crab cakes our entire life, starting at Calabash NC, Tampa FL, Pensacola FL, Charleston SC, Myrtle Beach SC......

and the WINNER (Tadah! Tadah! Tadah!)of the 2012 Bajno's Best Crab Cakes on the Entire Eastern Seaboard of the United States of America is.....

Coco's on Tybee Island, GA.

Every night at Sunset, Mary, the bartender/server, gets everyone up for a CONGO DANCE LINE!  All patrons, both young and old, are required to participate in the Sunset Dance Line that tours the dining room!  Mary leads the Congo Line for the Sunset Tour!  Summer months it stretches down to the docks and back!

Hat's off for 30 seconds please, and a deep bow to Tracy and her staff at Coco's!

and ... thanks to a wonderful bartender/server, who managed to double our bill by suggesting the great, wonderful 'Fried Strawberries" goes to.... MARY!  and - the unknown chef who prepared them!

YEA!  Blow your horn Mary!

Tuesday, April 17, 2012

Nothing better...

There's nothing better than sitting on a porch, when the temperature is "just right", and it rains, and you're in a rocking chair, and you can smell the fresh rain, and you can feel the temperature drop, and you can hear the birds, and you've got a little jazz playing.

And, a little beer helps.

Sunday, April 1, 2012

Arduino - Obtaining User Values Using Potentiometer


Obtaining User Input to an Arduino Using a Potentiometer

(code example at end)

There are many times where it's convenient to enter in values using a simple potentiometer instead of a GUI interface. An example would be whereby a user wants to set the desired temperature on a thermostat.

A potentiometer has three (3) leads coming from it. Typically, the center lead is the 'wiper'. The wiper has the ability to vary the resistance from one end of the potentiometer to the other end.

A potentiometer has a maximum resistance between two leads, typically the first and last lead, and an ability to vary the resistance seen on the other lead, the wiper.

Another way to think of this is to realize the potentiometer's wiper has the ability to provide 0% through 100% of the total resistance available through the other two (2) leads.

Per Ohm's law, which states the interaction between three (3) entities – resistance, voltage, and current – if a resistance is connected to a voltage source, than there will be a voltage drop across the two ends of the resistor.

A potentiometer is a resister that also includes a third lead – the wiper, can can move between the two ends of the resistor, and is capable of varying it's resistance while doing so. Because of this, the wiper lead sees a different voltage.

The voltage at the wiper can not be more than the maximum voltage connected on the voltage-in side of the resistor, when measured to the other end of the resistor. Likewise, the voltage at the wiper can not be less than the minimum voltage connected on the voltage-out side of the resistor.

So the voltage seen at the wiper will vary between 100% of the voltage at one end of the resistor, and 0% of the voltage at the other end of the resistor.

In a linear potentiometer (as opposed to a non-linear potentiometer, such as an 'audio' potentiometer, which is logarithmic), turning the potentiometer 5% clockwise will result in a change in the resistance seen at the wiper, by 5%. If there is a voltage applied to the first lead of the potentiometer, and ground and the last lead of the potentiometer, then this 5% change in the resistance will result in a 5% change in the voltage.

The voltage will drop across the potentiometer's wiper. Remember, it will either be at 0% of maximum, or 100% of maximum, or anywhere in between, but can not exceed those two values.

When working with an Arduino, I'm not typically concerned about the actual voltage present at the wiper. Instead, I'm concerned about the position of the wiper. For instance, when using a potentiometer to turn a setpoint up or down for a thermostat, I'm not interested, as a user of the thermostat, of the voltage that is being changed; instead, I'm interested in the temperature represented by the potentiometer, and how I'm changing it.

For this reason, when using a potentiometer in an Arduino circuit, I'm typically using it as a ratio-device. I'm more interested in the ratio, or percentage, of the position of the potentiometer's wiper, not the voltage being read at the wiper.

Here's what I mean by that.

On my porch heater thermostat, I have placed a potentiometer, which I use to set the temperature that I desire the porch to stay at. By setting the potentiometer's value, I am setting the temperature I desire for my porch.

If the potentiometer is connected at one end to a 5 volt power supply, and the other end is connected to ground, then the wiper, when turned, is capable of being at any voltage between 5 volts and 0 volts, inclusive.

But I don't set my porch heater to a voltage, I set it to a temperature.

On my porch heater, I decided I wanted to be able to specify (the setpoint), a temperature between 70 dF and 75 dF. That's a 5 degree F range. Thinking in percentages, 0% would be 70 dF, and 100% would be 75 dF. 50% would be half way the range of 5 degrees, or 2.5 dF. Since my bottom temperature is 0% at 70 dF, and 50% is half way between a range of 5 dF, thus the 2.5 dF, then that 2.5 added to the 0% of 70 dF is 72.5 dF. So, if I set my potentiometer to 50%, I'm actually setting my temperature to 72.5 dF.

Well, OK, you might be thinking, but how do I get voltages and percentages into temperature?

That's where software comes into play – the flexibility of software.

I'm constrained by the hardware here – the only thing I've got to work with here is the voltage, and it is going to range between 0% and 100% of the total 5 volts available. The Arduino is capable of reading the voltage. So it's capable of reading the 0 volts through 5 volts that are being supplied by the potentiometer. But that's all it's directly capable of doing using its Analog to Digital Converter (ADC).

So anything I want to do with the Arduino, in reading an external voltage, is going to range between this 0 volts and 5 volts. And the Arduino, in converting this analog value to digital, has the capability of dividing that 0 – 5 volts into 1024 equal divisions, because it has a 10 bit ADC converter. (Take a calculator and see what 2^10 gives you). The calculator will show you that 2^10 is 1024 individual values. But, since we are starting at 0 instead of at one, then the range is 0 – 1023.

So the Arduino converts the analog 0 – 5 volts to a digital value of 0 – 1023.

Here's where the ratios make everything simple, so it's important to understand this.

The ratio, or percentage, of the 0 – 5 volts is the same ratio, or percentage of 0 – 1023.

For example:
  • a voltage of 5 volts at the wiper, is 100% of the 0 – 5 volts. Likewise, it is 100% of the 1023 value, or 1023.
  • a voltage of 2.5 volts at the wiper, is 50% of the 0 – 5 volts, or 2.5 volts. Likewise, it is 50% of the 1023 value, or 512 (integer, not floating).
  • A voltage of 0 volts at the wiper, is 0% of the 0 – 5 volts, or 0 volts. Likewise, it is 0% of the 1023 value, or 0.

What that means, is if you can convert the input value to a ratio, or percentage, then you can apply that percentage to anything.

For instance, on my porch heater, I read the potentiometer, and get back a count of 256. To convert this to a ratio, then I'm trying to find out what percentage is 256 of the total 1024? So I'm going to divide 256 by 1024, and that will give me 25%. From a voltage standpoint, 25% of 5 volts is 1.25 volts, but I don't care about this at all. I'm only concerned with the percentage, which we've determined is 25%. But I am concerned with temperature, and my temperature range, 0% - 100% is 70 dF – 75 dF, which is a range of 5 degrees F. So 25% of the range of 5 degrees F is 1.25 degrees F, and since my base is 70 dF, and I'm 1.25 dF above that 0% value, then I'm at 71.25 dF.

So you can apply this to anything, and it's what makes a potentiometer so powerful in any circuit you are building.

The hardware gives you the range of 0 – 5 vdc, 0% - 100%, the ADC gives you 0% - 100% of 0 – 1023, and then using software, you choose what you want that to represent. In my case, I wanted that 0% - 100% to represent 70 dF to 75 dF for a porch heater. But for my Sous Vide cooker, I want that to represent 150 dF – 200 dF, which has a range of 50 dF, and using the previous example of 25% of the potentiometer, and 25% of the max 1024 counts, then I'm now talking about 25% of the range of 50 dF, or 12.5 degrees F above the base of 150 dF, or 162.5 dF.

Using software, you decide what the final values are that you are representing with the potentiometer. Then taking the percentage of the potentiometer, and the percentage of the maximum counts of 1024, you can directly apply that to whatever you are doing – RPMs, population, weights, valve opening, whatever.

Here's a coding example.

Assume we are wanting to set a desired temperature onto a thermostat. Further assume the thermostate will be capable of setting the temperature anywhere from 70 to 75 dF. Assume we will use analog pin A0 for the wiper on the potentiometer.

void setup() {
     pinMode(A0, INPUT);
     Serial.begin(9600);
}

void loop() {
     float setpoint = 0.0;
     float volts = 0.0;
     int counts = 0;
     float ratio = 0.0;
     float baseTemperature = 70.0;
     float tempratureRange = 5.0; //75 dF – 70dF = 5 degrees F range

     //get the potentiometer's wiper value in counts, 0 – 1024
     counts = analogRead(A0);

     //get the ratio of the counts as a percentage of mximum
     ratio = (float)counts / 1023.0;
     
     //using the ratio to calc the voltage (maximum of 5 vdc). It's not used, but just for fun.
     volts = 5.0 * ratio;  //we have a max of 5 volts

     //now get the setpoint temperature
     setpoint = (ratio * temperatureRange) + baseTemperature;

     //that's all there is to it!

     // now print this out
     Serial.print(“counts: “); Serial.print(counts);
     Serial.print(“, ratio: “); Serial.print(ratio);
     Serial.print(“, volts: “); Serial.print(volts);
     Serial.print(“, setpoint: “); Serial.println(setpoint);

}


Saturday, March 24, 2012

Goolsby's Sausage Patty Melt

Man, oh man, do I love a good Sausage Patty Melt!

My wife, The Queen, made me great one today!  I've just finished it, and it's better than any I've ever had at Waffle House!

In case you aren't happily familiar with Sausage Patty Melts, it consists of fried sausage, on toast, with a thick slice of onion, coated with mustard, along with a dash of Tabasco sauce, and topped with cheese.  Man, oh man...

Today she made her's with Goolsby Sausage, which has become our favorite sausage, bumping out previous first place go-to sausage king Jimmy Dean Sausage.  See my other Goolsby's Sausage recipe here.

Here's the recipe:

Ingredients

  • 4 patties of Goolsby's Sausage.  We buy ours at Costco.
  • 1 thick slice of onion
  • 2 pieces of bread, preferably thick slice Texas Style, but any will do.
  • 2 pieces of sliced, extra sharp cheddar cheese
  • Mustard
  • Tabasco
  • Cooking pan with lid
Cooking Instructions


  • Cut a thick slice of onion.
  • Use cooking instructions on box for Goolsby's Sausage.  These sausages are preformed and frozen. 
  • Once sausage is done, reduce heat and remove sausage from pan.
  • build up the patty melt
    • Place slice of bread onto plate.  
    • Place all four pieces of cooked sausage onto bread.  Some overlapping may occur, but that's OK.
    • Cover sausage with mustard.
    • Add any desired Tabasco sauce.
    • Place onion onto mustard
    • Place cheese onto onion
    • Cover with remaining slice of bread
  • Transfer back to pan
  • Set temperature of pan to medium.
  • Cover pan with lid.  This will help the cheese to melt.
  • Cook until toasted on first side.
  • Flip to other side
  • Cook until toasted on second side.
  • Remove and serve with strong, black, coffee.
Enjoy!


Friday, March 23, 2012

Banjo and Wife Take Tai Chi Lessons



What my wife looks like doing Tai Chi
My wife and I have recently started a Tai Chi class, attending once a week. She never looked better. She manages a grace that, so far, has eluded me.  I don't let that bother me.

Our instructor plays flute music. All Tai Chi instructors appear to do this. I think they do this to cover up the grunts. I played music all through high school and college, so I enjoy music. But this music doesn't appear to have a beginning or an end. It's always in the middle of whatever piece they are playing. It never goes anywhere. It starts in the middle, meanders around, and ends in the middle. Who thinks up music like this? I think they need some BBQ, then they can get somewhere, and have a start, middle, and end, instead of all this wandering around.

What I look like doing Tai Chi
We do things with our arms. And then we do things with our legs. The music facilitates this, as arms, legs and music are all wandering. Sometimes I just stand and stare at my arms – they are doing things I don't remember issuing commands to do. Sort of like autonomous arms, I guess. I don't know if this is good or bad, but I'm keeping an eye on them just in case they start to do something embarrassing or illegal. I don't think I'll be able to stop them, but I'm keeping an eye on them anyway.

I have to remember to keep my mouth closed. All this wandering about makes it want to gap open.

It's important to keep your toes pointed in the correct direction.  Mine want to wander.  Some people go barefoot, but I keep my shoes on so all my toes are forced to go in the same direction.  It's also important to use your head.  He hasn't said why yet, but I can tell by his looks at me that this is important.  Someday I'll figure this part out.  In the meantime, I'm busy keeping my toes pointed in the right direction, my head doing something as yet unknown, and my gaped-open mouth closed.  This all keeps me pretty busy.  My wife is not amused.  A husband can tell.

Sometimes we stand on one leg, and for some reason, yet unknown, we extend that leg. I'm glad nobody from my old hometown can see me like this. We don't go any where with it, just put it out there, then bring it back in and put it right back where it was before. We do it s-l-o-w. Then we do it again, except with the other leg. At least, I think we do.

Whatever.

Sometimes my arms do something like you might think a propeller would do, if a propeller had arms. It's been my experience, making buzzing sounds while doing this doesn't appear to be part of the approved plan. My instructor has a bald head; when he frowns, like when I'm making buzzing sounds, it goes up all the way from his eyebrows, up over the top of his head, and down his neck to his shoulders. You can see it. It's like one of those Chinese dogs – Sharpies, or something like that – the one with all the wrinkles - whatever. It's almost worth the price of admission to see that. But, seeing it once was enough – remember when they told you, as a kid, not to cross your eyes, or they might get stuck - so I don't do that any more – I don't want him stuck like that.  Did I say my wife was not amused? A husband can tell.

We do other things, all of which have names, but none of which appear to have anything to do with the names given them. We do brushing knees, first one, then the other. We brush them without touching them. It reminds me of how I cleaned my house when I was a bachelor.

We do parting horses manes, first the horse on one side, then the other horse. It's never the same horse, so I don't try to learn the horses names. It's probably better that way. It'd be my luck to get a frilly horse, one with ribbons that wants me to use a comb, when what I was really wanting was a Mustang, snorting and … oh, never mind.

We also push clouds around. Then we stand on one leg, push it out, then the other leg. But we don't go anywhere.  I can't tell if I'm pushing the clouds right or not; I can't see them.  I'm apparently the only one that can't see them, because everyone else is doing this with great enthusiasm.  I don't let that bother me either.

Sometimes, while doing things with our legs, we twirl our arms. At least, I twirl my arms; my wife appears to be doing some sort of smooth, silky ballet, performed with grace and elegance; what I do reminds me of hanging tobacco in barns to cure when I was a boy. No body accused me of dancing ballet then, nor are they likely to do so now.

Everything is done deliberately. There appears to be two speeds: slow, and real slow. I thought at first we were going slow so we could learn better, but I think the more we learn, the slower we are going. It might be the music.

I have to say I'm excelling at breathing. People are turning to stare, so I'm taking quite pride in that. It's apparent they think I know what I'm doing, and hope to learn from the master. I can also stand on one leg pretty good now, then the other. But I never seem to go anywhere.

I think things would work better if they got some new names for the different moves. I even wonder if they got them translated right. Wouldn't it be funny if, instead of parting horse's mane, it really meant baiting a hook?

Here are some names that I think would work better:

  • Pushing off a seat on MARTA. This would consist of lowering oneself onto one leg, while extending the other, to gently push off nappers so you can sit down.
  • One legged twirl. You extend one leg, holding it by the toe with one hand, while extending the other arm up in the air, all the while hopping on the other leg. I think the Russians have a dance similar to this, called the Putin Vodka Punch Roll.
  • Parting Lion's mane. This would consist of a quick forward thrust with one arm then the other arm, on a sleeping lion. This time, the legs are picking up and putting down as fast as they will go, and you are going somewhere, or else you're dinner.
  • Bowling clouds. Left arm comes up to your chin, where it grabs a cloud and moves it aside. Meanwhile, the other arm is coming up to do the same thing. Where these clouds are coming from, nobody has said, nor where they are going. However, with one leg in the air, turn, squat, and lay that sucker down the hall for a strike.
  • Old man grunt. This is where you extend one arm up high, do something with the palm, count your thumbs; turn real slow, sweep the floor with it, grunt, and repeat until you no longer grunt, or death, whichever comes first.
  • Saturday Night Fever. In this one, you try to look like John Travolta. Or in my case, you just try to stand with one arm up high, and the other is down low, with the finger pointed. Shake your hips some. It's hard to find a beat with that meditation music, but I never let not finding the beat get in my way before, so I'm not going to start worrying about that now.
  • One Quack Waddle. This is where you pick your leg up s-l-o-w-l-y, then semi-squat on the other. Then, with one hand in the air, and the other hand stretched out in front of you, with your palm up, wiggle your hips while scooting forwards. It works better on a wooden floor; unfortunately, our floor is carpeted, so I keep pitching forward, doing face-plants. That's OK, because everybody appears to enjoy pointing and laughing, and you get bonus points if you quack while falling forward s-l-o-w-l-y.

There appears to be a correct way to do everything. So far, it has eluded me.  I'm not holding out much hope for the future either.

I was told tonight to extend my left arm, to put my left palm facing me. I would know that I had done it right because the thumb on my left had would be pointing to my right. Meanwhile, stand on one leg.

Try as I might, I was unable to put my left palm facing me, and have the thumb on that hand be on my right. My dumb left hand's thumb just kept ending up on the left when I had my palm facing me. I must have the wrong thumb on the wrong hand, or the right thumb on the left hand. Or something like that. I'm not even sure what that means, I'm so confused.  My wife is concerned.  A husband can tell.

So far, I can say this with authority: my wife looks good doing this, and I can stand on one leg. I'm not sure why yet, but I'm doing it. Along with breathing and grunting.