How can I make my Hamilton deck layout look professional? Have you ever looked at your Hamilton STAR deck layout and wondered how Hamilton adds those 3D models to it? You’ve added a non-standard piece of labware or a carrier or a device and it just looks like a box floating in the air? We can help you dress that deck layout up and have it looking like a professional Hamilton 3D model with just a few readily available tools and some time.
Step 1: Obtain a 3D File
The first thing we need to do in order to add a 3D model to our Hamilton deck layout is to obtain a 3D model. You have a few options for this. The best path is to see if the vendor for your device can provide you a file, something that most will be willing to do. In this article we are going to use a Ziath barcode scanner for demonstration and they have the models readily available on their website for download as a STP file.
Now a barcode scanner is a fairly simple box so you could easily draw your own if you wanted using a program like Solidworks, FreeCAD, Sketchup, or Blender. When you are trying to add a 3D model of something custom for your company, say a carrier that you designed custom for your system, you will need to do this yourself. Once you have your file we need to convert it into the format that Hamilton Venus can use.
Step 2: Convert Your File to the Right Format
Hamilton Venus uses a DirectX 3D file called a X file. You absolutely must have your file in this format before continuing. There are a lot of free 3D design softwares on the market so you have plenty of options. The file I’m using for this demo is a STP file, the software I have which exports a X file is Blender. However, Blender doesn’t import STP files. Blender can import a STL so let’s get that into that format first.
FreeCAD to the rescue
Contacting Ziath and requesting a STL file is an option, but I’m in a hurry so I’m going to convert myself. FreeCAD luckily does import STP files and it can export STL so it’s ideal for this step. Simply open up the file in FreeCAD and save it out as a STL. Moving on we can now import our STL file into Blender. Unfortunately STL files are simply 3D meshes. This means they don’t have any color or texture data which is fine for a 3D printer. Since we want to render a 3D model for display within Hamilton Venus so we’ll need to add this.
Blender as the final step
Blender offers a lot of options for creating scenes; adding colors, textures, and lighting to your model. I am not going to provide a tutorial on how to use Blender in this article. YouTube has a lot of great videos for that which will get you familiar with using the software. Check out Blender Guru’s beginner tutorial series if you need help with this. Add the colors to your model that you want and then save it as a X file. If you’ve just installed Blender you won’t see the DirectX option as this requires a plugin which you need to enable. Once you have your X file we can finally move onto Hamilton’s software.
Step 3: Create Your Labware and Add the 3D Model to it
Hopefully you are familiar with the labware editor for Hamilton Venus. You will need to create or open an existing labware file. Once you have a piece of labware defined and open for editing we can add your model to it. For the purposes of my Ziath barcode reader I’ve defined two pieces of labware. A template with a single position for where the reader will be mounted and a regular rack. The template will not be assigned a 3D model as I don’t want it visible.
Opening the rack, I’m going to assign the model to and then snap it onto the template/carrier. Creating two pieces of labware may seem counter-intuitive but bear with me. In this case it will make things a bit easier to snap the barcode reader to into template. For the template I’ve measured where my barcode scanner is mounted by teaching an offdeck location with my iSwap. If you haven’t done this yet that’s alright, just take a guess at the X/Y/Z coordinates. You will want to have this correctly defined before physically adding anything to the robot.
To add the model, open your rack in the labware editor and navigate to where you have the options for adding an image or a model. Select the 3D model input and direct the editor to the X file we created earlier. For simplicity you might want to make a dedicated 3D model folder in the labware folder. You’ll see there are spots for X, Y, and Z offsets as well, you will need these later to fine tune the alignment after we add it to the deck.
Step 4: Add Your Labware to the Deck Layout
Alright, we are in the home stretch now. We have a template, a rack with a 3D model assigned, and a deck layout we want to add it to. You do have a deck layout right? Drag your template onto the deck which creates the position for the rack of tubes to be dropped off. Now drag your scanner onto the deck and snap it onto the carrier. It probably doesn’t look completely right so make note of which directions in X/Y/Z you want to move it and then make some offsets in the labware editor. Keep snapping the scanner onto the position and adjusting the offsets until you are happy with the results.
Step 5: Enjoy Your Professional Looking Deck Layout
If you are using 3D view mode for the deck layout you will now have a very professional looking GUI. In the run control when your plates are being moved from your carriers to the reader and back you’ll see a nice 3D representation of what is happening. For my example the labware associated with the 3D model isn’t mounted to the deck but part of a custom carrier, this will give a clean representation of what the deck should look like to the users, cutting down on errors. If you are like me then you’ll just enjoy the aesthetics of your deck layouts actually representing the reality on the system. Hopefully this article helped you add 3D models to your system deck, drop us a comment if you have any questions or contributions!
Thanks for taking the time to post this. I wish Hamilton could provide some information even half as good as this.
Hi Tod,
Thanks for the kind words. One of the reasons we started this site was because of the lack of programming information online for liquid handlers so it is really nice to know that we’re helping people like us.