opulo-inc / docs

Documentation for the assembly, maintenance, and usage of Opulo designs.
Other
14 stars 19 forks source link

Opulo OpenPnP configuration, suggestions to documentation #144

Closed dalegrover closed 11 months ago

dalegrover commented 1 year ago

The following suggestions apply to the Opulo documentation on the website, accessed from about 11/14 to 11/20/23. The context is V3.0.2 running OpenPnP test branch 11-02-2023 (as recommended), with config file from 3.0.5. Ubuntu 22.04.3 fresh install.

  1. In https://docs.opulo.io/openpnp/calibration/1-import-config/#linux-ubuntu-install-guide

In the "Linux Users" box, it mentions installing Java, and has the user install default-jdk. However, default-jre would install just the runtime and unless the developer stuff is needed, seems like a good choice.

I would add a note to this section: "Note that if Java is not installed, OpenPnP will fail silently when you attempt to start by clicking on the icon."

  1. In https://docs.opulo.io/openpnp/calibration/2-connect-to-machine/#bottom-camera-config

I seemed to have camera issues when both cameras were on the same (internal to the computer) USB hub. This was under Linux, on a not-recent Dell. If this is real, and not coincidences, then a useful tool to identify what USB ports are connected to what internal USB hubs is to run "lsusb -t". Plugging in any identifiable USB device (e.g., mouse) makes it quick to map what USB ports go to what internal USB hubs (identified by distinct "bus" number). At least this is what I seem to see on this system.

  1. To what extent are the nozzle holder flanges useful? If they make calibration easier and more reliable, seems like they should be included (I have a V3.0.2), or at least there be a strong recommendation that they be used. I used https://www.printables.com/model/400068-lumenpnp-v3-cp40-nozzle-holder-flange-40mm

  2. In https://docs.opulo.io/openpnp/calibration/1-import-config/

The video "Openpnp setup from scratch", aug 2023 https://www.youtube.com/watch?v=vuFalyzcCZA is referenced, but I don't think this serves anyone well. It only goes so far (18:35) where it becomes evident he has a setup with a single vacuum pump, while the V3.0.2 and above have two. There is some broad handwaving how to handle the two vacuum system, but no clear path forward. It does not feel useful to offer this alternative path that starts off well but can't be followed through to the end. Or, bribe qwertymodo to do an update!

  1. In https://docs.opulo.io/openpnp/calibration/2-connect-to-machine/

I can't find a reference to the fact that when starting things up (under Linux only?), the LumenPnP should not be connected to the PC, and should be powered up (lights will color cycle), and only then the USB to the controller connected.

  1. In https://docs.opulo.io/openpnp/calibration/2-connect-to-machine/#bottom-camera-config

Step 8, doesn't specify YUYV in camera setting. If this is something that doesn't vary, then specify it. If it does vary, note this.

  1. In https://docs.opulo.io/openpnp/calibration/4-homing-fiducial/#tuning-the-homing-fiducial

Step 6, may need to adjust the top camera exposure to get this view. Have to do it before step 9.

Step 11, jog by clicking the arrow keys, or control-arrow keys on keyboard. Just the regular arrow keyboard keys will not jog.

Step 11, need to convey how close--as close as 0.1 will get, or 0.01, or 0.001mm? Also, make clear that the actual fiducial that needs to be centered is the hole, not the silk pattern.

  1. In https://docs.opulo.io/openpnp/calibration/4-homing-fiducial/#fine-tune-camera-exposure

Step 5, Clarify that the "image info card" is shown by selecting "Show Image Info?"

Step 5. If it is the case that the two settings that are usually sufficient to produce the desired image are exposure and contrast, then emphasize those. (Step 5 just says "and other camera settings").

  1. In https://docs.opulo.io/openpnp/calibration/5-mm-per-pixel/#bottom-camera-calibration

Steps 1-8: The nozzles are likely to move in Z when installing nozzle tips. Should there be a homing here? Especially since we are focussing the bottom camera using this Z position.

  1. In https://docs.opulo.io/openpnp/calibration/6-nozzle-offset/

Step 8. We may not have already configured nozzle H1 as having N045 on it, so we may not have "Nozzle: N1 - N045 (Head:H1)".

Step 10, "Do not navigate away from the Heads > ReferenceHead H1 > Nozzles > ReferenceNozzle N1 tab while running the wizard." Does this apply from the start of this section? If so, this warning needs to be earlier.

Because these steps are executed twice, consider adding something like: "nozzle N1 (first time) or nozzle N2 (second time)" and note at the start that people will be executing the following instructions twice, once for each nozzle.

  1. In https://docs.opulo.io/openpnp/calibration/7-bottom-camera-position/

Step 7, make it clearer what is wanted: e.g., "Jog the toolhead a couple of mm off to either side so it is not aligned with any calibration point. This will make it easier to see if the nozzle position is correct when aligning with the bottom camera." (Is that correct?)

Before step 7, need to move N045 to N1, since we had it on N2 from before.

  1. In https://docs.opulo.io/openpnp/calibration/8-nozzle-tip-calibration/nozzle-tip-calibration/

Isn't it the case that we need to tell openPnP what tip is on what nozzle? (e.g., via Heads->ReferenceHeadH1->Nozzles->ReferenceNozzleN1 (and N2) under Nozzle Tips and setting it to loaded?

  1. In https://docs.opulo.io/openpnp/calibration/10-vacuum-sensor/#enabling-and-tuning

Step 3 should describe where the actuator window is--i.e., "In the Machine Controls, Actuator tab, select the H1:VAC1 or..."

Note--I consistently have to click "Read" twice to get a valid reading from H1:VAC1 or H2:VAC2. Is this common?

  1. In https://docs.opulo.io/openpnp/calibration/10-vacuum-sensor/#enabling-and-tuning

I found I had to disable vacuum sensing for N045--the part off was 234, and part on was 226. But with 0603 I'd get the nozzle slightly off and have even higher values for part on. It was not usable. Other nozzles seemed to give a good range. On discord, at least one other person noted that they had the same limited range with N045.

If this is a common thing, then add instructions how to disable for a nozzle--e.g., To disable vacuum sensing for a nozzle tip (e.g., N045), set the measurement method for the nozzle tip to "None" for both part on and part off in the part detection section.

  1. In https://docs.opulo.io/openpnp/ftp/1-installing-the-feeders/

Suggest a name for the board--i.e., "ftpPCB.board"

  1. In https://docs.opulo.io/openpnp/ftp/1-installing-the-feeders/#attach-feeders

Step 1, had to use B14 and F14 (on V3.0.2) The suggested locations would not work with the stuff installed under the deck.

Step 3, specify tape feed holes on the left!

Note: "0° angle means that pin 1 side is on the left for ICs and passives are horizontal with pin 1 on the left. This is defined by EIA 481 standard, general rule is pin 1 is the closest pin to the tape hole and pin 1 side of the IC is on the left of the tray." from https://www.eevblog.com/forum/manufacture/tronstol-e1-experience/

If you have a clearer statement, this would be a good place to put it.

Step 3. Note that you should leave the clear tape in place--it will be removed later.

  1. in https://docs.opulo.io/openpnp/ftp/1-installing-the-feeders/#fine-tuning-feeder-height

step 2, before step 2 need to select one of the feeders. Be explicit. The default is last one.

step 5, must jog z up first before moving!!! jog up to z=30 using CTRL-SHIFT-Z, for example.

  1. In https://docs.opulo.io/openpnp/ftp/2-setting-up-the-board/#finding-the-ftp-location

step 2 Is a step missing? Don't we need to add board to job?

gabeseltzer commented 11 months ago

Thanks a lot for the detailed comments!

  1. Added
  2. Added a note about maybe needing different USB hubs on a computer
  3. Added a link to the flanges
  4. For now I'm keeping the video. It can take people part of the way, and then they can double-check their work on the docs page.
  5. Added
  6. Added
  7. Added a note
  8. Added
  9. Added
  10. Updated, and the bit about not navigating away from the wizard only matters from step 10 onward.
  11. Clarified
  12. Nope, the vision algorithm doesn't take this into account as far as I know.
  13. Added
  14. I'll keep this in mind if we get more reports, but so far we're ok.
  15. added
  16. added
  17. clarified
  18. Importing the board is covered in the "installing feeders" page.

Thank you again for your detailed notes and feedback. These changes should make it smoother for folks to go through the setup process ❤️.