-
Arduino Camp Demo
07/26/2017 at 14:31 • 0 commentsI finished the main functionality for the scope last week and took to the University of Alberta Engineering DiscoverE camp for a demo. It was the main, end demo for a little talk I gave a grade 7-9 "Awesome Arduino" campers on the idea of "software-enabled everything".
It was a lot of fun to be there and answer some very good, and sometimes hard questions. They all got to play with the scope. I'll get to present to campers in the second round Aug 10th.
All that remains is to update the Fritzing file, fix a bad encoder button red LED wire, and tweak and update the arduino source. Then, of course, post it all.
Then on to the next project!
-
Hardware Done
07/19/2017 at 01:38 • 0 commentsThe hardware is finished.
Three new photos are uploaded to the gallery and 2 were deleted as they no longer represent the current state. The new photos focus on the stepper mechanicals. To mount the focus motor I had to drill and tap the back of the scope, which was a little nerve-wracking as I was not sure how much metal there was. I did take things apart completely and could measure the cast thickness near my drill locations, but could not measure them as I did not have deep enough calipers.
I also have made the Arduino control case larger because the original case, based on a RAMPS case, was cramped when it came to wiring. Instead of my hacked together protoshield, I bought a proper shield from Digikey and rewired everything, taking the opportunity to add a reset button and "centre" button. The latter will move the XY stage to centre the slide under the optics; seems like a nice thing to have.
The XY homing algorithm works nicely and I have X motion working with the mouse. Y will be the same, just different motor address. Focus will be the easiest because I don't have to worry about endstops or coordinates. The focus will control the "fine" adjustment knob since that's what you will use most one coarse focus has been set by hand.
The wiring between the scope and control boxes is still kind of ugly, but it does work.
Tomorrow I will finish code and test so that it's ready to be demo'd on Thursday to 16 campers at the U of Alberta DiscoverE "Amazing Arduino" summer camp. Should be fun.
-
openSCAD update
07/09/2017 at 03:46 • 0 commentsI realized that the uploaded model for the XY motor mount was not what I thought; it was missing the Hall Effect sensor mounts that are clearly shown in the photos. Not sure why and I could not find a source file that had them, so I suspect I made mods in openSCAD and then did not save them. Silly!
I've also included the 28BYJ_48 geared stepper motor and mount source files (openSCAD) that are referenced by the XY motor mount.
The case for the Arduino Mega controller was too small, so I made changes to make it taller. That provides more space inside for wiring. It also seemed a good idea to add a reset button and a second button that I can use for mode selection or something -- I've not yet decided as I need to review the existing code.
The next, and final step is to design a mount for the third 28BYJ_48 that moves the fine focus of the scope. Two more gears are needed, so back to my custom openSCAD gear generator, which will likely result in an update to that source. The code to control fine focus should not be too hard; I will use left and right mouse buttons for closer (down) and father (up).
This all will have to be done in the next 11 days as I need the unit to show to Grade 7-9 students at a summer engineering camp with a focus on Arduino programming. Quite looking forward to it!
-
Push to completion...
06/08/2017 at 21:55 • 0 commentsI will finally have time to complete this project and publish all the code and remaining artefacts (e.g., focus motor control mechanical design files). The push comes from the need to have it done before mid-July so I can use it as part of some university summer camp sessions. Volunteered to help with beginning Arduino programming for grades 7-9 and very much looking forward to it.
It is only the focus control that needs to be completed and it should be easy enough to build on the existing design and code base.
-
Delays...
03/02/2017 at 21:22 • 0 commentsThis not really an update, but more of a whiny excuse blarg.
Paying work and home renovations keep getting in the way of completing this project. Plus revamping my MendelMax 2 printer means that I haven't yet printed the final motor mount and gears for the focus function.
While I wait for the final paper work on a continuation of a customer project from last year (SDR stuff), I hope to find time to finish the the microscope project and write it all up.
It will get done!
-
Catching up on previous docs
10/31/2016 at 04:59 • 0 commentsUploaded a schematic, some openSCAD files for motor mounts and controller housings, and a component list.
Still to do:
- Design motor mount for focus control
- Add in code for focus control
- Review modes and see if I can't add a "centre slide" function/mode
- Tune mouse control of XY motion
One probably concern is how to keep the lens from crashing into a slide. Ideally you'd need a way to know which lens has been selected (2 hall switches and 3 magnets?) and then a calibrated focus height... too tired to think of that now.
-
Progress to date...
08/24/2016 at 16:12 • 0 commentsI will be adding source files, links, and other details over the next few weeks. Everything is or will be open-sourced.
The motor mounts and gears that are matched to the manual control wheels on the microscope are all specific to the microscope I bought. I suspect that there are many models from the same company that can use the designs as is, but it's likely you will have to modify the designs for your own. That means getting out a rule and other measuring tools to determine mount points, etc.
As of this initial post, what is working includes:
- XY stage motors mounted
- Gears made and mounted on steppers and matching microscope XY spindles
- Arduino-based mouse input and motor control
- Hall sensor XY automatic homing
- Illuminated push-button rotary encoder and second push button mounted and interfaced to Arduino
- Encoder push button used to enter parameter setting mode
- Set fast and slow speeds for motors
- Other push button used to change mode; fast and slow XY, fast and slow focus
- Encoder push button used to enter parameter setting mode
May try to add a "slide center" mode.
Moving on to testing mouse XY control integration ("unit" tests complete), then starting on focus mechanical.
- XY stage motors mounted