Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Arduino Setup and Belts #35

Open
KH-Xavier opened this issue Jun 25, 2015 · 37 comments
Open

Arduino Setup and Belts #35

KH-Xavier opened this issue Jun 25, 2015 · 37 comments

Comments

@KH-Xavier
Copy link

Hello!

I am from the University of Alberta and we are excited to be building not only one, but several of these machines for research if the first one works. However, I am having some difficulty...

  1. After much fiddling, Processor now will talk the Arduino (I believe), however, whenever I try to "Convert Model" I receive the error "ArrayIndexOutOfBoundsException:521216"

image

Also, after selecting the right COM, I receive "SD Initialization Failed." Does the SD card need to be hard-wired in before the program will work? I am trying to program the Arduino while I wait for parts to come in the mail...

  1. Any suggestions on where to get the small belts for the gears? I can't find much smaller than 60 mm and some require 40-50 mm on the carriages.

Thanks!

@Pwdr
Copy link
Owner

Pwdr commented Jun 26, 2015

Hi there,

Great to hear there is a lot of interest in the Pwdr project for
educational purposes! I'm pretty confident that together, we'll be able to
fix your problems.

  1. Normally, it shouldn't bee too much of a hustle to get the serial
    communication. Maybe you can give me some details what you had to fiddle
    with? But back to your question. This error pops up more often, I'm still
    not sure what is the root cause, but it has to too with the STL file. Some
    files just don't work. This teapot (https://www.thingiverse.com/thing:852078)
    should work.
  2. Yep, the SD card should be connected to the Arduino, at least to print
    something. You can still jog the axes when the SD Initialisation Failed
    pops up (well, I think so, have to check the source code)
  3. I got my belts and pulleys from SPD-SI (http://www.sdp-si.com), as shown
    in the BOM, but there should be plenty of similar options around, for
    example McCaster-Carr (http://www.mcmaster.com/). You mention some measures
    (40-50mm and 60mm), but I'm not really sure what you mean, can you explain?

On Thu, Jun 25, 2015 at 9:52 PM, KH-Xavier notifications@github.com wrote:

Hello!

I am from the University of Alberta and we are excited to be building not
only one, but several of these machines for research if the first one
works. However, I am having some difficulty...

  1. After much fiddling, Processor now will talk the Arduino (I
    believe), however, whenever I try to "Convert Model" I receive the error
    "ArrayIndexOutOfBoundsException:521216"

[image: image]
https://cloud.githubusercontent.com/assets/13054695/8364153/3eb2531e-1b41-11e5-9408-7ab0f89948aa.png

Also, after selecting the right COM, I receive "SD Initialization Failed."
Does the SD card need to be hard-wired in before the program will work? I
am trying to program the Arduino while I wait for parts to come in the
mail...

  1. Any suggestions on where to get the small belts for the gears? I
    can't find much smaller than 60 mm and some require 40-50 mm on the
    carriages.

Thanks!


Reply to this email directly or view it on GitHub
#35.

@KH-Xavier
Copy link
Author

Thanks for the quick response.

  1. I changed the serial communication to the correct COM port (next time I am in the lab I can provide which lines I changed), but the Processing window allowed me to select Serial Any Idea behind the 1500W Power Supply?  #2 (COM6) with ease. However, I then received an "RXTX version mismatch" error, so a quick Google led me to

http://forum.processing.org/one/topic/how-do-i-install-rxtx-2-2pre1-jar-on-windows-7.html#25080000000981023.html

I followed the instructions and the error disappeared.

I will try to convert the teapot file when I'm in the lab and let you know if it works.

  1. Great. Once the hardware arrives I will try to jog the axes without printing. I see an Eagle schematic, but is there an Eagle .brd file that is successful? I am trying to make my own PCB board for elegance, but I'm worried something will cross incorrectly and cause hours of frustration...
  2. I ordered the belts from SDP-SI as per the BOM in the documentation, but I see that there is a huge belt that looks too large for the printer (2218mm)? In terms of the small belts, here's a screen shot of what I mean by the small belts.

image

I looked again and found small belts that will work.. guess I didn't look hard enough. I will order the correct sizes as I build the printer.

@Pwdr
Copy link
Owner

Pwdr commented Jun 27, 2015

COM port behavior on windows is a bit quirky. I'll add some information
about the RXTX upgrade.

There is no .brd available. Currently there is a error in the schematics,
I'll update is asap. Could you share the design of the PCB when it's
finished?

The huge belt isn't used as such, it has to be cut to length and tensioned
using the clamping parts. The smallest belt should fit. The chassis has
slotted holes to make it fit.

On Friday, June 26, 2015, KH-Xavier notifications@github.com wrote:

Thanks for the quick response.

  1. I changed the serial communication to the correct COM port (next
    time I am in the lab I can provide which lines I changed), but the
    Processing window allowed me to select Serial Any Idea behind the 1500W Power Supply?  #2
    Any Idea behind the 1500W Power Supply?  #2 (COM6) with ease.
    However, I then received an "RXTX version mismatch" error, so a quick
    Google led me to

http://forum.processing.org/one/topic/how-do-i-install-rxtx-2-2pre1-jar-on-windows-7.html#25080000000981023.html

I followed the instructions and the error disappeared.

I will try to convert the teapot file when I'm in the lab and let you know
if it works.

Great. Once the hardware arrives I will try to jog the axes without
printing. I see an Eagle schematic, but is there an Eagle .brd file that is
successful? I am trying to make my own PCB board for elegance, but I'm
worried something will cross incorrectly and cause hours of frustration...
2.

I ordered the belts from SDP-SI as per the BOM in the documentation,
but I see that there is a huge belt that looks too large for the printer
(2218mm)? In terms of the small belts, here's a screen shot of what I mean
by the small belts.

[image: image]
https://cloud.githubusercontent.com/assets/13054695/8382341/64ffac3e-1bef-11e5-9db4-5adb85e2b054.png

I looked again and found small belts that will work.. guess I didn't look
hard enough. I will order the correct sizes as I build the printer.


Reply to this email directly or view it on GitHub
#35 (comment).

@Pwdr
Copy link
Owner

Pwdr commented Jun 27, 2015

The diagram has been updated!

On Sat, Jun 27, 2015 at 12:53 PM, Alex Budding alex.budding@gmail.com
wrote:

COM port behavior on windows is a bit quirky. I'll add some information
about the RXTX upgrade.

There is no .brd available. Currently there is a error in the schematics,
I'll update is asap. Could you share the design of the PCB when it's
finished?

The huge belt isn't used as such, it has to be cut to length and tensioned
using the clamping parts. The smallest belt should fit. The chassis has
slotted holes to make it fit.

On Friday, June 26, 2015, KH-Xavier notifications@github.com wrote:

Thanks for the quick response.

  1. I changed the serial communication to the correct COM port (next
    time I am in the lab I can provide which lines I changed), but the
    Processing window allowed me to select Serial Any Idea behind the 1500W Power Supply?  #2
    Any Idea behind the 1500W Power Supply?  #2 (COM6) with ease.
    However, I then received an "RXTX version mismatch" error, so a quick
    Google led me to

http://forum.processing.org/one/topic/how-do-i-install-rxtx-2-2pre1-jar-on-windows-7.html#25080000000981023.html

I followed the instructions and the error disappeared.

I will try to convert the teapot file when I'm in the lab and let you
know if it works.

Great. Once the hardware arrives I will try to jog the axes without
printing. I see an Eagle schematic, but is there an Eagle .brd file that is
successful? I am trying to make my own PCB board for elegance, but I'm
worried something will cross incorrectly and cause hours of frustration...
2.

I ordered the belts from SDP-SI as per the BOM in the documentation,
but I see that there is a huge belt that looks too large for the printer
(2218mm)? In terms of the small belts, here's a screen shot of what I mean
by the small belts.

[image: image]
https://cloud.githubusercontent.com/assets/13054695/8382341/64ffac3e-1bef-11e5-9db4-5adb85e2b054.png

I looked again and found small belts that will work.. guess I didn't look
hard enough. I will order the correct sizes as I build the printer.


Reply to this email directly or view it on GitHub
#35 (comment)
.

@KH-Xavier
Copy link
Author

Thanks for that.

It looks like the only change is the HP connector? Can you confirm that Output 5 of U6 is disconnected?

Also, as an aside, I understand the reset button, but what is the A0(RX) button for..?

image

@Pwdr
Copy link
Owner

Pwdr commented Jun 27, 2015

No, that's not correct, thanks for checking out the complete diagram. This
is how the wiring should be. I've commited the update.

[image: Inline image 1]

The only change (prior this hickup) was in this area:

[image: Inline image 2]

On Sat, Jun 27, 2015 at 7:10 PM, Kevin notifications@github.com wrote:

Thanks for that.

It looks like the only change is the HP connector? Can you confirm that
Output 5 of U6 is disconnected?

[image: image]
https://cloud.githubusercontent.com/assets/13054695/8393098/2024fffa-1cbd-11e5-8ce8-7259dc13086d.png


Reply to this email directly or view it on GitHub
#35 (comment).

@KH-Xavier
Copy link
Author

For some reason your images aren't showing. I'll work on a .brd from your new .sch file.

@KH-Xavier
Copy link
Author

I made it to the lab today and as promised, this is what I changed in the code...

Under PWDR_GUI_V0_3.pde > Serial

String[] comList;
int selectPort;
boolean serialSet = false;
Serial arduinoSerial;

String serialString = "Choose the correct Arduino COM port...";

void startSerial(){
arduinoSerial = new Serial(this, "COM6", 9600);
arduinoSerial.bufferUntil(10);
serialSet = true;
serialString = "Serial port #"+selectPort+" connected";

The only thing I changed was to hard code "COM6", rather than selecting it.

I tried converting the Utah Teapot and it worked flawlessly.... I didn't bother trying to send the data because there are no electronics yet.

I will be uploading the .brd shortly.

@KH-Xavier
Copy link
Author

Also, Boreaz published a different schematic for the HP Connector in Issue #22. What's the difference between that and the one you published a few days ago?

Which end of the connector is labelled 16? On my cable, two pins on the end are connected as below, which pin does this correspond to? Are they labelled 1 to 16 or 16 to 1?

image

@KH-Xavier
Copy link
Author

Hi there,

I've been working on Pwdr again and the PCB has been hooked up, along with the motor drivers.

When I use the Processor program, it won't let me select the correct COM. I see the available COM ports, but when I click the box nothing happens. Even after I changed the code above, it still says Arduino not connected. This is with or without the PCB...

EDIT:

I noticed that selecting the wrong COM worked (processing would let me select COM 3, followed by crashing), so I disabled COM3 in the device manager. I'm not even sure what it was for. After I did that, I was able to select COM6 with a Serial Connection established.

@KH-Xavier
Copy link
Author

Could I please get an update?

@Pwdr
Copy link
Owner

Pwdr commented Aug 6, 2015

Sorry, I returned from vacation this week, your message was quite down the
large pile of to-do's.

Here is an image of the numbering on the ribbon, print head and catridge
holder:
printer head pin layout

I'm quite puzzled now about the schematics. Currently, I don't have
physical access to my Pwdr machine in order to check it. Maybe Boraz can
confirm his design works? Or maybe it might even be safer to check on the
old layout (
https://github.com/Pwdr/Pwdr-Model-0.1/blob/6084e1437b6733d2ed041ac12901771d7d181411/Electronics/Pwdr-Circuit-0.1.pdf
)

Concerning the COM issue: can you connect to the Arduino using a simple
Processing sketch? On what platform are you? Have you installed the RTRX
update?

Alex

On Thu, Aug 6, 2015 at 6:22 PM, Kevin notifications@github.com wrote:

Could I please get an update?


Reply to this email directly or view it on GitHub
#35 (comment).

@KH-Xavier
Copy link
Author

No worries.. you're just my only savior at this point!

For some reason the image won't show.. can you hotlink it?

The COM issue has been sorted out. I can connect now... but now the Utah Teapot is giving me the Array Index Out of Bounds error... I'm going to try and get some coding colleagues to look at it if possible. I haven't touched the code and it was working before.

@Pwdr
Copy link
Owner

Pwdr commented Aug 6, 2015

I fixed the image in my previous post.

I'm not 100% sure the teapot I linked does work, here is a link to the teapot I always use: http://wetterhorn.nl/teapot.stl

@Pwdr
Copy link
Owner

Pwdr commented Aug 6, 2015

My schematics was based on this:

image

Coming from DYI Inkjet Printer (http://www.thingiverse.com/thing:8542)

But that doesn't match with the numbering of the ribbon cable. Vaguely, I remember the connector Conn_16_hp_q2347A to be the socket for the ribbon. So the numbering in the schematic should be like in the picture of the ribbon (NC/NC/COM/3/4/5/2/1/12/11/10/9/6/7/8)

Numbering from the right sight of the Darlington array goes from 1 to 16. Would you manage to put together the scheme? Otherwise, I'll try to arrange it in a few days.

@KH-Xavier
Copy link
Author

Thanks for that. I'll put the schematic together for you in the next day or so and post it here for you to check. Right now I'm trying to get the files to send to the SD card... I'll keep you posted.

Thanks again.

@Boreaz
Copy link

Boreaz commented Aug 6, 2015

Hi, I confirm that this scheme https://cloud.githubusercontent.com/assets/1730691/9117835/f5ef99c8-3c6c-11e5-9318-7f5fb3c0e319.jpg is correct, I don't remember now but you may need to change only the numbering of the nozzles in the firmware in the reverse order.

@Pwdr
Copy link
Owner

Pwdr commented Aug 6, 2015

No problem, I'm pleased I could help you.

BTW: the send button in the GUI doesn't work. You have to manually copy the
files to the SD card (sending them over the serial connection would take
ages
). Maybe I should fix that...

On Thu, Aug 6, 2015 at 8:35 PM, Kevin notifications@github.com wrote:

Thanks for that. I'll put the schematic together for you in the next day
or so and post it here for you to check. Right now I'm trying to get the
files to send to the SD card... I'll keep you posted.

Thanks again.


Reply to this email directly or view it on GitHub
#35 (comment).

@KH-Xavier
Copy link
Author

Here's the sketch I made with the array connected to a pin connector. The connector is labelled as the ribbon cable. The sketch is based off of Boreaz's setup.

image

@KH-Xavier
Copy link
Author

Hi there,

Do you know what current the ink cartridge draws? There was no specification on the 24V power supply, so I found one laying around the lab. It was rated for 4.5A. I powered it up and the Arduino exploded haha.

I thought the inkjet would have internal resistors, but I guess not...

@Pwdr
Copy link
Owner

Pwdr commented Aug 10, 2015

The inkjet draws a real minimum of power. Did you separate the inkjet
circuit from the Arduino circuit?

On Mon, Aug 10, 2015 at 6:35 PM, Kevin notifications@github.com wrote:

Hi there,

Do you know what current the ink cartridge draws? There was no
specification on the 24V power supply, so I found one laying around the
lab. It was rated for 4.5A. I powered it up and the Arduino exploded haha.

I thought the inkjet would have internal resistors, but I guess not...


Reply to this email directly or view it on GitHub
#35 (comment).

@KH-Xavier
Copy link
Author

I had a PCB printed and I think there was a common connection somewhere,
otherwise it doesn't make sense.

I'll redo it the old fashioned way with a protoboard and see what happens
then.
On Aug 10, 2015 11:50 AM, "Pwdr" notifications@github.com wrote:

The inkjet draws a real minimum of power. Did you separate the inkjet
circuit from the Arduino circuit?

On Mon, Aug 10, 2015 at 6:35 PM, Kevin notifications@github.com wrote:

Hi there,

Do you know what current the ink cartridge draws? There was no
specification on the 24V power supply, so I found one laying around the
lab. It was rated for 4.5A. I powered it up and the Arduino exploded
haha.

I thought the inkjet would have internal resistors, but I guess not...


Reply to this email directly or view it on GitHub
<#35 (comment)
.


Reply to this email directly or view it on GitHub
#35 (comment).

@KH-Xavier
Copy link
Author

I'm planning on attending MS&T in Ohio; I was too late to submit a paper, but I was accepted for a poster. I'd like to highlight my work on various printers (Pwdr being one of them). Could you give me the names of the people responsible? I found a paper by Alex Budding, would that be yourself?

@Pwdr
Copy link
Owner

Pwdr commented Aug 11, 2015

Yep, that's me. Please cite to that paper. Could you provide a link to your
poster?

On Tuesday, August 11, 2015, Kevin <notifications@github.com
javascript:_e(%7B%7D,'cvml','notifications@github.com');> wrote:

I'm planning on attending MS&T in Ohio; I was too late to submit a paper,
but I was accepted for a poster. I'd like to highlight my work on various
printers (Pwdr being one of them). Could you give me the names of the
people responsible? I found a paper by Alex Budding, would that be yourself?


Reply to this email directly or view it on GitHub
#35 (comment).

@KH-Xavier
Copy link
Author

Sure thing, once the poster is drafted..

Everything is working now.. kind of. The ink cartridge smokes when it's ejecting ink. Not sure if that's normal. I lowered the voltage down to 20V and it still does the same thing. Also, the jets release into a spray, is that normal as well? See below. Is there a way to test each nozzle separately?

I realized my problem was a bad PCB. Everything was crossed and messed up, even though the sketch looks good... who knows. I hard-wired everything by hand.

20150814_120901

@Pwdr
Copy link
Owner

Pwdr commented Aug 17, 2015

What's the distance between the nozzles and the paper? When it's more than
(roughly) one centimeter, it sprays.

But! The cartridge definitely shouldn't smoke, were is the smoke coming
from?

On Fri, Aug 14, 2015 at 8:10 PM, Kevin notifications@github.com wrote:

Sure thing, once the poster is drafted..

Everything is working now.. kind of. The ink cartridge smokes when it's
ejecting ink. Not sure if that's normal. I lowered the voltage down to 20V
and it still does the same thing. Also, the jets release into a spray, is
that normal as well? See below. Is there a way to test each nozzle
separately?

I realized my problem was a bad PCB. Everything was crossed and messed up,
even though the sketch looks good... who knows. I hard-wired everything by
hand.

[image: 20150814_120901]
https://cloud.githubusercontent.com/assets/13054695/9280708/61aaade0-427d-11e5-82e5-c4b78365af96.jpg


Reply to this email directly or view it on GitHub
#35 (comment).

@KH-Xavier
Copy link
Author

I moved the paper closer by hand and it was a stream... that was an easy fix, thanks.

As for the smoke, it's coming from the nozzles. Here's a picture, you can see the smoke, slightly, against the black plastic near the nozzles. It's only when ink is being jetted. No clue. I'm tempted to just leave it, but I don't want a colleague to be subjected to an ink grenade.

Again, I raised the voltage slightly to see what would happen and ink jets at ~20V instantly, but smoke still happens. Maybe the current is too high? Not sure what throwing resistors down would do.

image

@Pwdr
Copy link
Owner

Pwdr commented Aug 17, 2015

Looks pretty cool, but indeed, you might not want to risk redecorating your
office.

Couple of things to try: to lower the voltage or even adjusting the timing
in the Arduino program. Measure the resistance and compare with a pristine
cartridge.

PS: Have a look at this: microwavecam.com/Videos/Misc/color ink cartridge
211b.wmv :-)

On Mon, Aug 17, 2015 at 5:41 PM, Kevin notifications@github.com wrote:

I moved the paper closer by hand and it was a stream... that was an easy
fix, thanks.

As for the smoke, it's coming from the nozzles. Here's a picture, you can
see the smoke, slightly, against the black plastic near the nozzles. It's
only when ink is being jetted. No clue. I'm tempted to just leave it, but I
don't want a colleague to be subjected to an ink grenade.

Again, I raised the voltage slightly to see what would happen and ink jets
at ~20V instantly, but smoke still happens. Maybe the current is too high?
Not sure what throwing resistors down would do.

[image: image]
https://cloud.githubusercontent.com/assets/13054695/9308964/1e653e44-44c4-11e5-98b7-45db06713435.png


Reply to this email directly or view it on GitHub
#35 (comment).

@Boreaz
Copy link

Boreaz commented Aug 17, 2015

@KH-Xavier
Copy link
Author

@Pwdr - your video would definitely be what our lab would have looked like if I let this cartridge run...

@Boreaz - I increased the value, but anything higher than 1000 and the ink just turns into big droplets and makes a mess; the smoke is also still there... I think it might be a damaged cartridge from all the smoke earlier. I ordered new ones, let us see what happens then.

@soulkiller2001
Copy link

Hello!I just met some problem.When I try to convert my model,it just show error as~~~Can you tell me how to solve this problem?
qq 20151224142710

@Pwdr
Copy link
Owner

Pwdr commented Dec 25, 2015

It has got something to do with different STLs. Unfortunately, I haven't
been able to fix it... :-(

Please try another STL and see whether it works

On Thursday, 24 December 2015, soulkiller2001 notifications@github.com
wrote:

Hello!I just met some problem.When I try to convert my model,it just show
error as~~~Can you tell me how to solve this problem?
[image: qq 20151224142710]
https://cloud.githubusercontent.com/assets/16148100/11990589/c6741560-aa4a-11e5-9b59-97f06bac6b19.png


Reply to this email directly or view it on GitHub
#35 (comment).

@kelyaman
Copy link

hi guys,

can anyone explain this lines, i have got a Problem to adjust my Steppers

// Size of steps for stepper motors ( steps pro revolution
const int stepX = 21; //21; // 0.09433962264 mm per step (59.6mmPI/1600)
const int stepY = 250; //500; // 0.09433962264 mm per step (59.6mmPI/1600)
const int stepZ = 120; //120; // 0.1mm per full stap (10*0.01)

// Size of steps when jogging
const int jogStepY = 1000;
const int jogStepX = 500;
const int jogStepZ = 250;

// Size of machine in steps. Type long because number of steps > int (2^15)
const long build_piston_width = 11000/stepX; //11000/stepX; //2000/stepX total width: 14800
const long build_piston_length =28000/stepY; // 28000/stepY; // total length 76000
const long distance_roller_nozzle = 30000; //30000;
const long piston_depth = pwdrconfig[3]; // The depth of the part is defined by the preprocessor
const long build_piston_end_stop = 76000; //76000; // Absolute end of the machine

@Pwdr
Copy link
Owner

Pwdr commented Jun 28, 2017 via email

@kelyaman
Copy link

kelyaman commented Jun 28, 2017 via email

@kelyaman
Copy link

kelyaman commented Jul 5, 2017

pleez I have a question, do I need a Library to control my Ink,

whats mean those lines:

void spray_ink( byte lower_nozzles, byte upper_nozzles) {
//lower_nozzles = 1-8 - PORTA
for(int i = 0; i <= 7; i++){
byte mask = 1<<i;
if(lower_nozzles & mask){
PORTA |= mask; delayMicroseconds(5);
PORTA &= ~mask; delayMicroseconds(1);
}
}
//upper_nozzles = 9-12 - PORTC using pins 4,5,6,7 so 4-7 not 0-3
for(int i = 4; i <= 7; i++){
byte mask = 1<<i;
if(upper_nozzles<<3 & mask){
PORTC |= mask; delayMicroseconds(5);
PORTC &= ~mask; delayMicroseconds(1);
}
}

@bazrabazara
Copy link

i have problem with convert stl file. I also tried teapot.stl file. and which CAD program did you draw?.are there any solutions?.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants