Hi, regarding the off the shelf encoder for closed loop dc motor control, try searching for this paper and look at the scalable magnetic strip encoder he tries "Low-cost closed-loop control of a 3D printer gantry". Most forums restrict links for new members so the info below might need copying.
He used AS5311 Linear Sensor,
http://www.ams.com/eng/Products/Positio ... -Magnetic-
Position-Sensors/AS5311
With
AS5000-MS10-300 Magnetic Strip,
http://www.ams.com/eng/Products/Positio ... 0-MS10-300
Hacking the HP45
Re: Hacking the HP45
Hello
I would prefer these sensors, I have had good experiences with it.
http://www.megatron.de/en/products/hall ... turnR.html
They are not too expensive. Alternatively, there are also optical sensors.
Linear encoders are available from about 250 € so they are quite expensive.
I would try using a rotary sensor.
Best wishes
Philipp
I would prefer these sensors, I have had good experiences with it.
http://www.megatron.de/en/products/hall ... turnR.html
They are not too expensive. Alternatively, there are also optical sensors.
Linear encoders are available from about 250 € so they are quite expensive.
I would try using a rotary sensor.
Best wishes
Philipp
- dragonator
- Site Admin
- Posts: 597
- Joined: Fri Aug 14, 2015 4:48 pm
- Location: The Nethelands
- Contact:
Re: Hacking the HP45
Short weekend report. It was really hot so I got less done than I wanted, but I did some small things.
I did some detailing on the 3D design with the floating gantry. All seems to work out. I recon I need a dozen so more hours to get this design detailed enough for production. The only major part left is the HP45 carrier, and that is still in the prototype stage.
A short component fit test, the current components fit on the board. This should not be a reason for celebration, but I had to design half of the pcb parts myself due to Fritzing reaching it's limits. Now I only hope that nothing too much changes (see below).
I had a big list for the HP45 this weekend. I was going to rewire the breadboard like the schematic posted earlier. I was not capable of doing everything. I did the power side of the board and ran a few tests. In first testing, I might have broken over half of the nozzles. I have not yet confirmed this. Some addresses might not be opening. I will do some scope tests and rewire the nozzle testing circuit to test all nozzles.
A minor issue was found. The MIC's seem to have no pull down resistor to speak of. Not weird, the chips are designed to drive loads, not drive high resistance FET's. With the no load scenario, they are noisy and require really long (50+ microseconds) to change state. An external pull-down did the trick, but the board I have right now might not fit another 22 resistors.
Weekend's is over now, so that's all I have for now.
(PS. I like the encoder. It is added to the list of upgrades once the Oasis prototype works)
I did some detailing on the 3D design with the floating gantry. All seems to work out. I recon I need a dozen so more hours to get this design detailed enough for production. The only major part left is the HP45 carrier, and that is still in the prototype stage.
A short component fit test, the current components fit on the board. This should not be a reason for celebration, but I had to design half of the pcb parts myself due to Fritzing reaching it's limits. Now I only hope that nothing too much changes (see below).
I had a big list for the HP45 this weekend. I was going to rewire the breadboard like the schematic posted earlier. I was not capable of doing everything. I did the power side of the board and ran a few tests. In first testing, I might have broken over half of the nozzles. I have not yet confirmed this. Some addresses might not be opening. I will do some scope tests and rewire the nozzle testing circuit to test all nozzles.
A minor issue was found. The MIC's seem to have no pull down resistor to speak of. Not weird, the chips are designed to drive loads, not drive high resistance FET's. With the no load scenario, they are noisy and require really long (50+ microseconds) to change state. An external pull-down did the trick, but the board I have right now might not fit another 22 resistors.
Weekend's is over now, so that's all I have for now.
(PS. I like the encoder. It is added to the list of upgrades once the Oasis prototype works)
Re: Hacking the HP45
The Oasis design is nice, but have you considered a 'glide rail' on the front instead of a cantilever?
A derlin block resting on a 8mm rod would be sufficient.
This would also allow you to use the rear bearing as hinge to lift up the arm for underside maintenance.
A derlin block resting on a 8mm rod would be sufficient.
This would also allow you to use the rear bearing as hinge to lift up the arm for underside maintenance.
- dragonator
- Site Admin
- Posts: 597
- Joined: Fri Aug 14, 2015 4:48 pm
- Location: The Nethelands
- Contact:
Re: Hacking the HP45
A glide rail is something I consider. On the Oasis page I first tried a conventional gantry. It actually works fine, and is easier to make, but powder printing is incredibly messy, and any guide rail and timing belt is one to keep clean. The floating (cantilever) gantry was a suggestion by Wonko so that there is no guide rail in the front. It is by no means mandatory. I have designed Oasis so I can swap out full systems (hoppers, gantries etc.) without disturbing the rest. I might do a conventional gantry or a glide rail gantry if I get to that point.
The hinging of the gantry is a neat idea, although I would have to specifically design it if I do a supported gantry.
The hinging of the gantry is a neat idea, although I would have to specifically design it if I do a supported gantry.
- dragonator
- Site Admin
- Posts: 597
- Joined: Fri Aug 14, 2015 4:48 pm
- Location: The Nethelands
- Contact:
Re: Hacking the HP45
Lets apply science to the HP45
I did something I wanted to do for a while now. Test the thermal sense resistor. To do this, I got a multimeter, a DS18B20 temperature sensor, a cup of hot water and 2 HP45 printheads. One unused and with a sticker on the head, one I did all the experiments with. I logged the temperatures and resistances in Excel to get a detailed map of the resistances. This is what I got:
Some interesting things to note. The 10x resistors varies wildly. On the first head it was 288ohm, on the other 301ohm. This is a 13ohm difference. The same offset roughly applies to the thermal sense resistors, with a 12-15ohm difference.
The resistance is roughly linear. The difference between 36 and 56 degrees Celsius is between 25 and 30 ohm. This difference is not huge, and also not accurate, but at least gives a ballpark figure.
The temperature sensor itself is almost directly on the printhead. Putting my finger on the chip almost instantly changed the resistance.
The 10x resistor does not react to any temperature change.
The sticker placed on the nozzles to protect them is not water tight. Ink leaked past the sticker and into the water. It does stop some ink though.
PLA cannot handle boiling hot water. My carrier partially melted and disconnected with the HP45. This is why there is a gap on head 1 between 67 and 61 degrees.
I will add this information in a refined form to the HP45 page (http://ytec3d.com/hp45-inkjet-printhead/).
I did something I wanted to do for a while now. Test the thermal sense resistor. To do this, I got a multimeter, a DS18B20 temperature sensor, a cup of hot water and 2 HP45 printheads. One unused and with a sticker on the head, one I did all the experiments with. I logged the temperatures and resistances in Excel to get a detailed map of the resistances. This is what I got:
Some interesting things to note. The 10x resistors varies wildly. On the first head it was 288ohm, on the other 301ohm. This is a 13ohm difference. The same offset roughly applies to the thermal sense resistors, with a 12-15ohm difference.
The resistance is roughly linear. The difference between 36 and 56 degrees Celsius is between 25 and 30 ohm. This difference is not huge, and also not accurate, but at least gives a ballpark figure.
The temperature sensor itself is almost directly on the printhead. Putting my finger on the chip almost instantly changed the resistance.
The 10x resistor does not react to any temperature change.
The sticker placed on the nozzles to protect them is not water tight. Ink leaked past the sticker and into the water. It does stop some ink though.
PLA cannot handle boiling hot water. My carrier partially melted and disconnected with the HP45. This is why there is a gap on head 1 between 67 and 61 degrees.
I will add this information in a refined form to the HP45 page (http://ytec3d.com/hp45-inkjet-printhead/).
Re: Hacking the HP45
Hello,
this is very interesting, unfortunately I can not recognize the reference measurement in the document. Would it be possible to mount the document in original?
As I understand, the R10X as a reference for the line losses, to identify and compensate in the controller. It can be compensated as well, the sensor data as the outputs. Since the contact resistance of pogopins may vary makes that sense I think.
Best wishes
Philipp
this is very interesting, unfortunately I can not recognize the reference measurement in the document. Would it be possible to mount the document in original?
As I understand, the R10X as a reference for the line losses, to identify and compensate in the controller. It can be compensated as well, the sensor data as the outputs. Since the contact resistance of pogopins may vary makes that sense I think.
Best wishes
Philipp
- dragonator
- Site Admin
- Posts: 597
- Joined: Fri Aug 14, 2015 4:48 pm
- Location: The Nethelands
- Contact:
Re: Hacking the HP45
The 13 ohm difference does not come from the spring contacts. I think it comes from the interface between de flexible circuit (on the HP45) and the actual printhead section, which is made using a different process. The resistance in the printhead section can be manufactured very precisely, but the connection between the circuit and the printhead is variable. This I think gives the difference in resistance.
Because a 13 ohm difference in the temperature measurement would give a 10 degrees Celsius offset, the 10x can be used to compensate for this. I do not know if it might also affect the connection to the nozzles (requiring a slightly longer duty cycle to trigger a nozzle). This is my guess from what I have measured so far.
In other news, I got the SMD to pin adapter for the QFP100 package. The board looks suspiciously much like the PCB's I order, with the silkscreened code and everything. It fits, but I cannot break 100 pins to a breadboard. I do not have the headers available. I will be using an island prototype board for my experiments with the L6452. I also have to say, the L6452's are packaged really neatly. That is all for now.
Because a 13 ohm difference in the temperature measurement would give a 10 degrees Celsius offset, the 10x can be used to compensate for this. I do not know if it might also affect the connection to the nozzles (requiring a slightly longer duty cycle to trigger a nozzle). This is my guess from what I have measured so far.
In other news, I got the SMD to pin adapter for the QFP100 package. The board looks suspiciously much like the PCB's I order, with the silkscreened code and everything. It fits, but I cannot break 100 pins to a breadboard. I do not have the headers available. I will be using an island prototype board for my experiments with the L6452. I also have to say, the L6452's are packaged really neatly. That is all for now.
Re: Hacking the HP45
Good morning, I am following with great interest and passion your job. I'm really admired. Unfortunately I am not able to help for electronics but if you need it, I can work together to faithfully reproduce the plastic parts through perfect silicone molds. Of course also to build and test prototypes.
My best wishes and greetings.
Danilo (Italy)
My best wishes and greetings.
Danilo (Italy)
- dragonator
- Site Admin
- Posts: 597
- Joined: Fri Aug 14, 2015 4:48 pm
- Location: The Nethelands
- Contact:
Re: Hacking the HP45
Time to put our thinking caps on. Due to a weird conversation with someone on this forum this afternoon, I was told that the 10x resistor actually does something else if addresses are open. This person then mauled all his/her posts, and I had to delete everything, but I was still curious. What if there is more.
So I coded a manual address selection, ran through all addresses and used the multimeter to test the 10x resistor (positive to 10x, negative to ground). This is what I got (in ohms) on the used head:
I can say one thing. It only shows on the 10x, not on the thermal sense. It has only 3 distinct levels (120-ish, 75-ish and 300-ish) and the 120-ish level seems to be on the first address. It gives the levels in both polarities (i switched the leads on the multimeter, no difference in resistance). It is also not perfectly matched between heads. Some addresses give different levels on different heads.
So I coded a manual address selection, ran through all addresses and used the multimeter to test the 10x resistor (positive to 10x, negative to ground). This is what I got (in ohms) on the used head:
- no addresses: 302
- address 1: 124
- address 2: 302
- address 3: 075
- address 4: 302
- address 5: 075
- address 6: 302
- address 7: 075
- address 8: 302
- address 9: 076
- address 10: 302
- address 11: 077
- address 12: 078
- address 13: 078
- address 14: 078
- address 15: 078
- address 16: 078
- address 17: 079
- address 18: 079
- address 19: 079
- address 20: 079
- address 21: 079
- address 22: 079
- no addresses: 290
- address 1: 119
- address 2: 290
- address 3: 072
- address 4: 072
- address 5: 290
- address 6: 290
- address 7: 073
- address 8: 290
- address 9: 073
- address 10: 290
- address 11: 073
- address 12: 074
- address 13: 074
- address 14: 074
- address 15: 074
- address 16: 075
- address 17: 075
- address 18: 075
- address 19: 075
- address 20: 075
- address 21: 076
- address 22: 076
I can say one thing. It only shows on the 10x, not on the thermal sense. It has only 3 distinct levels (120-ish, 75-ish and 300-ish) and the 120-ish level seems to be on the first address. It gives the levels in both polarities (i switched the leads on the multimeter, no difference in resistance). It is also not perfectly matched between heads. Some addresses give different levels on different heads.