Long time no post. Machining and trying to get back on my feet.

Well, it has been some time since I posted, about a month and a half or so. There have a been a number of events that have occurred in that time that have both beneficial yet disappointing. I’m not really sure where things are going right now but I hope they get better. 
 
Anyways, on to some things I’ve been working on.
 
Machining
While I am a decent machinist, it is a job that I vowed to myself I would never do again. Lo and behold, I am machining again in order to get some funds and to simply make it through the months in terms of rent and bills. Some of my previous stuff has left me bone dry in terms of money. Realistically, I should thank my lucky stars that I have a skill I can fall back on that pays well and is relatively easy, most others are not so lucky.
 
Luckily, the shop I’m working at is pretty decent, though I’m not the machinist I once was and my machining style doesn’t really match the pace and style of the jobber shop I’m working at. Hopefully I either get better soon or find something more along the lines of what I’ve become good at.
 
Stamping machine with the Haas mill
This is a little project that I came up with after thinking about dot-peen machines. Basically the idea is to take a Haas mill and allow full control of its machinery to turn it in to a makeshift dot-peen marking machine.
This feat is accomplished through the serial port with a pass-through interpreter box connected to a computer.


Haas Tool Room Mill TM-2

Here is how it is all achieved.
 
First Step: Computer – 
 
  This is where the points and fonts are generated and created. All of the end points are sent out from the computer at a lower baud rate than the mill uses. This allows for longer cable length on the RS-232. Of course I could use USB or RS-485 but RS-232 is more common an interface. A sample output might be:
 
MOVE X.455 Y1. (Basically a rapid move)
STMP X.461 Y1. (Stamp here)
STMP X.467 Y1. (Stamp here)
HOME (Go back home)
 
The communication is full duplex between the pass-through and computer so that the pass-through can request more data.
 
Second Step: Pass Through – 
 
Despite its name, it does not actually pass data through. It interprets the data and controls the stamping head. It will interpret the data and send the machine the appropriate G-codes to perform the commands. The pass through will communicate with the machine at 115200bps whereas the computer <-> passthrough is about 9600bps. a sample output might look like this (based on the above text):
 
G00 X.455 Y1.;
G01 X.461 Y1. F200.; (move to stamp position)
DPRNT [S]; (Is at position, passthrough will stamp)
G01 X.467 Y1. F200.; (move to stamp position)
DPRNT [S]; (Is at position, passthrough will stamp)
G28 G91 Z0;
G28 G91 Y0;
 
Third Step: Stamping head – 
 
Not really a step so much as device to peen the surface of the part. Here is a picture of an earlier design I made for a stamping head.
Solenoid head for custom dot-peen machine

 
 
I don’t know if I’ll ever do this one. Macros need to be enabled in order for this to work so a lot of machines won’t be able to take advantage of it. Also, my time is limited.
 
Programming a CAM system
 
Since the shop I’m at has no CAM system for the guys on the floor and I don’t want to use a cracked copy of say, Gibbs or MasterCAM. I’m writing my own. The going is slow but I am slowly developing a little 2.5D cam system. The math function are working and the object creation is starting to come on line. Now for an interface. I am thinking of migrating over the VB.NET for this program since it does have a lot of nice object handling functions and it is a little easier than creating a user interface from scratch.
 
 
Anyways, That’s what I’ve been up to for the last while. Hopefully I get a car soon so that I don’t have to walk in this anymore. 🙂

Walking down 97st in edmonton

 
This was taken on my walk home the other day.

Grams to Krebs conversion formulae

After many a day scratching my head as to why I can’t get my viscometer to calibrate correctly, even assuming logarithmic and quadratic relationships, I find out why I have been having so many problems.

Krebs units are in not very linear!

I have found an old chart with lots of grams to krebs conversions on it and after painstakingly transcribing them, I have come up with the following graph.


Grams to Krebs (grams on horizontal axis, krebs vertical)
Grams to Krebs (grams on horizontal axis, krebs vertical)

As you can see, there are a number of points of inflection along this graph. Here are some images of the various best fit scenarios regarding this set of points. These points encompass the KU values 40.1 to 141, just for reference.

Linear (0.0813637)*x+(64.5289)
Linear (0.0813637)*x+(64.5289)

Quadratic (-0.0000813007)*x^2+(0.173302)*x+(46.274)
Quadratic (-0.0000813007)*x^2+(0.173302)*x+(46.274)

Cubic (1.01193e-7)*x^3+(-0.000252971)*x^2+(0.253045)*x+(37.7895)
Cubic (1.01193e-7)*x^3+(-0.000252971)*x^2+(0.253045)*x+(37.7895)

Quartic (-2.3958e-10)*x^4+(6.42986e-7)*x^3+(-0.000653817)*x^2+(0.359922)*x+(30.3868)
Quartic (-2.3958e-10)*x^4+(6.42986e-7)*x^3+(-0.000653817)*x^2+(0.359922)*x+(30.3868)

Quintic (1.93677e-13)*x^5+(-7.87171e-10)*x^4+(1.20087e-6)*x^3+(-0.0008998)*x^2+(0.403747)*x+(28.1763)
Quintic (1.93677e-13)*x^5+(-7.87171e-10)*x^4+(1.20087e-6)*x^3+(-0.0008998)*x^2+(0.403747)*x+(28.1763)

As you can see, a quartic relationship is quite passable though I still added a quintic relationship. It may be possible to make a simpler equation based on these values but I thought it prudent to stick to what I know.

You can see the dataset here. GramsvsKrebs.txt

Be warned, I may have made mistakes or the chart may have been wrong, Do your own research if you want to be certain of your results. Hopefully this is of help to somebody.

Working on new viscometer head

  Well, I’ve been designing some new stuff since having a little wind of inspiration. This head weighs in at about 700g and provisions have been made to allow an attachment to a handle and therefore a hand-held version could be made. Here are some images.
 

Line Drawing
Line Drawing

Fully Assembled visc head
Fully Assembled visc head

Viscometer head opened
Viscometer head opened

Viscometer head from the back
Viscometer head from the back

 
  I’m going to use these design concepts on the next in-process version. I’m going to design the external case for the electrical portion and for possible battery storage. Since the motor only draws 100ma at 24v or 200ma with a 12v motor, a hand held version is definitely possible. This version will use a PIC16F767 for control and using a smaller LCD display to display info.
  Now, on to developing some other devices. I’ve wasted far too much time in the last many months, time to get busy.

Getting closer to final completion

A long road behind and still some ahead, here are some pic of the viscometer in its state of completion.

stormer viscometer with cover looking in
stormer viscometer with cover looking in

viscometer from the back
viscometer from the back

viscometer standing up
viscometer standing up

viscometer laying down
viscometer laying down

stormer viscometer with cover
stormer viscometer with cover

Now to implement the ModBUS protocol and finish up this project.

In-Process Stormer Viscometer – Damn near complete

  The viscometer is nearing full completion! YAY! To mark this occasion to mark the end of a long two years, I am placing a small gallery of the almost finished product. The only thing missing is the outside cover which consists of a 4″ od aluminum tube. Also, the springs I’ve ordered have also not arrived as yet, however, for now, the elastics will suffice. Here are some of the features and facts:
 

  • Can be used in-lab or in-process
  • Selectable RPM with a tight tolerance on RPM +/-0.5RPM
  • User calibration routines. This allows the end user to calibrate with 3 fluids of known viscosity
  • 16 key keypad, used for calibration and settings, also for running special tests
  • Can be used as a laboratory gel-timer
  • Can be used for custom tests besides stormer viscometry
  • Low power consumption <100ma or <2.4W
  • RS-485 Serial output
  • Control electronics have complete galvanic isolation
  • 24VDC supply required
  • repeatability (requires further testing) +/- 1.5%
  • Modbus protocol (not yet implemented)
       
      Here’s the Gallery!

       
       Yes, a few too many pictures, oh well.
       
       This thing took me quite a while and what I learned from it was immeasurable. Thankfully now that everything works as expected I can focus on my other projects without having this thing hanging over my head. Here’s to completion!
       
      As an aside, here’s an interesting document on viscosity.
      here

Programming, Drafting, Designing and whatever else…

Well, it’s been a busy few weeks since I left the business training program. Thankfully I have some work lined up and things may go well for the short-term. For the last while I was working on the design for a plastic enclosure for a customer. Everything went quite well and the customer is an absolute joy to work for/with. Based on a board and taking cues from other ideas, I drafted a simple enclosure for a device. Here are some pictures of the enclosure.

enclose2-1
enclose2-2

Worked out well…

Also, I am now continuing my foray into the automation stormer viscometer as well as my auditory camera level. Things should go quite well if I bust my ass…

Chaos game, a little program.

Was bored for a little while today so I made a quick program in Freebasic to produce a Sierpinski Triangle and a some sort of pentagonal fractal. This little program uses the chaos game method to produce it.

seirpinski triangle
seirpinski triangle

seirpinski at 5
seirpinski at 5


I think the result is kind of interesting, I’ll post the crummy little program.
choppy.bas
Nothing special with this, just the result of boredom. You could change the radius and the ox and oy variables to look deeper into the triangle/pentagon.

Rotary Viscometer almost finished

Well, it’s been a long road but I’m almost at the finish line in terms of the majority of development. All of the parts are mostly made and I’ll begin programming very soon, most of which has been done already or figured out in advance.
Firstly, I started with the board. I had to build it from scratch because I’m not certain of they’ll want more features or different ones, also I simply don’t have the funds to get the printed boards made, those will fit in the top of the unit below the LCD and reflection switch.


viscometer test board with lcd display
viscometer test board with lcd display

Viscometer, assembled on base
Viscometer, assembled on base

So, after this I spent the entire weekend building the parts required to make the rest of the unit. I opened up a few of the tolerances and had to make some changes simply to allow for better fitting afterward. The unit would have been impossible to assemble otherwise 🙂

Viscometer with sensor in hand
Viscometer with sensor in hand

I have to say, I’m satisfied with the results thus far. The bearing holding the sensor together could be a bit better though. This week I’m going to have to program the unit and hopefully this long saga will be over. Well, at least when I make the 15 units it will be.

Programs for generating old school sounds

Since I’ve started playing around with writing games again, I’ve been interested in old school sounds. These things can be hard to come by these days since a lot of the older sounds were pure square and triangle waves.

I found a couple of programs for creating these sounds. Both are windows programs
.


SUBSYNTH.ZIP
SFXR.ZIP

.
So far, they seem to work OK. I’m just keeping them here in case they disappear someday.

Wrote a little game… Astrosmasher

Well, out of boredom I’ve created a little game called Astrosmasher. Nothing special really, I just wanted to see if I could make a game look like an old Atari game. I think I succeeded in some ways

Astrosmasher is a partial clone of an older colecovision game bit I got bored with it pretty quickly, I think I’d like to write games that are a little more fun despite the fact that I have no artistic ability. 🙂

Anyways, here are some screen shots and a like to the game. The game requires windows 2000+.


*****DOWNLOAD ASTROSMASHER*****

.

asmash3
asmash2
asmash1

Consider this game, for the most part, incomplete. I got bored with the idea and made it workable. It is a hard game though. My high score thus far is 35100. Give ‘er a shot. 😀

Viscometer and Graphing

Now that I’ve got the new board working, I’ve been programming all of the pertinant functions back into the chip. This time I’ve redesigned them to be a little more modular and useful in the long term. As was mentioned in the post a while back, I made a new board and I’ve come to realise that the RS-485 Port is wrong. It has 2 connectors when it requires 3. A-B-Ground. Sigh!

Anyways, I’ve been running tests with the viscometer and everything is working great so far. I’ve got the temperature sensors working and the conditioning of them with OP-amps has worked like a charm. Though I find that the read value from the ADC is pretty jumpy.

Anyways, as reference, here some photos.


The Whole Deal
The Whole Deal

Temp Conditioner
Temp Conditioner


Also, the linearity test went well. Better than I initially expected.

Motor Linearity
Motor Linearity


One can notice that there are some burps along the graph but for the most part, it’s fairly linear as far as I’m concerned.

Writing a new graphing program

Since I’m starting to take measurements based on time and value along with multiple data sets, I’ve decided that I need a new graphing program. This one will allow the use of multiple data sets and it will have save files to allow for easy recall of color settings and data parameters. Here are some of the features:

  • Multiple data sets
  • Data sets will have options for coloring and graphing choices
  • New data sets can be derived from existing data sets
  • Data sets can be compared
  • More extensive stats will be used

.

This will all be written in FreeBASIC. Why? Because I like it. Also because FBEdit kicks ass in relation to FBIDE.

Anyways, I’ll post incremental versions.