27 lines
2.4 KiB
ReStructuredText
27 lines
2.4 KiB
ReStructuredText
|
Hypertherm
|
|||
|
##########
|
|||
|
:date: 2012-05-07 23:30
|
|||
|
:author: tyrel
|
|||
|
:category: Personal
|
|||
|
:slug: hypertherm
|
|||
|
:status: published
|
|||
|
|
|||
|
For the past three months I have been upgrading and rewriting version 2 of my software for Hypertherm. I am under a contract for my father’s company. His company is developing a machine to test how well air flows (laminar flow) through a plasma cutting torch head, and how much air leaks out over a certain time (delta pressure loss).
|
|||
|
|
|||
|
This has been a nice adventure. I am talking to the tester over serial, reading in a hand scanner (barcodes and acts as a keyboard easy), talking to a DYMO printer and using a database.
|
|||
|
|
|||
|
The serial communication was pretty straightforward. I started a new thread and listen for serial all the time. The tricky part with that was that because it was on another thread, I needed a delegate to talk to my UI when I did things like change the picture from blank to a big red X, or update a label.
|
|||
|
|
|||
|
The hand scanner wasn’t even a factor that took longer than 10 minutes, I just pop up a dialog box asking for input.
|
|||
|
|
|||
|
The DYMO printer was the hardest part. This took me a month to figure out, I kept fighting with the printer. I could figure out how to print to the left roll, the ones we setup as as the passing labels, but I couldn’t for the life of me figure out how to get it to print to the right label, using a custom label. I tried to load the labels into data and use a StreamWriter/StreamReader object to treat that as the label, but it kept printing one that had, for reasons unknown to me, been locked into the printer. I finally gave up on using the interface they provided and am writing the label to a temporary file. The file is in the user’s %appdata% directory in a sub directory that it will not be mistakenly written to, so I feel safe doing it this way. Granted, the machine is a single purpose machine, once this program is installed it will only run this program day and night.
|
|||
|
|
|||
|
Once I got the printer working, I checked it in to github and realized it took me way longer than anticipated. I learned a lot about .NET development (by no means everything, or even most things, just a lot compared to what I did know before [nothing].)
|
|||
|
|
|||
|
Tonight while developing I decided to video some aspects of the Program.
|
|||
|
|
|||
|
The following four links are videos, showing parts of the program and machine in action.
|
|||
|
|
|||
|
* [Hosted on Qik - no longer available]
|
|||
|
* [Hosted on Qik - no longer available]
|
|||
|
* [Hosted on Qik - no longer available]
|