Class ReferenceDragFeeder
- java.lang.Object
-
- org.openpnp.model.AbstractModelObject
-
- org.openpnp.spi.base.AbstractFeeder
-
- org.openpnp.machine.reference.ReferenceFeeder
-
- org.openpnp.machine.reference.feeder.ReferenceDragFeeder
-
- All Implemented Interfaces:
Identifiable
,Named
,Solutions.Subject
,Feeder
,PropertySheetHolder
,WizardConfigurable
public class ReferenceDragFeeder extends ReferenceFeeder
Vision System Description The Vision Operation is defined as moving the Camera to the defined Pick Location, performing a template match against the Template Image bound by the Area of Interest and then storing the offsets from the Pick Location to the matched image as Vision Offsets. The feed operation consists of: 1. Apply the Vision Offsets to the Feed Start Location and Feed End Location. 2. Feed the tape with the modified Locations. 3. Perform the Vision Operation. 4. Apply the new Vision Offsets to the Pick Location and return the Pick Location for Picking. This leaves the head directly above the Pick Location, which means that when the Feeder is then commanded to pick the Part it only needs to move the distance of the Vision Offsets and do the pick. The Vision Offsets are then used in the next feed operation to be sure to hit the tape at the right position.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ReferenceDragFeeder.Vision
-
Nested classes/interfaces inherited from interface org.openpnp.spi.PropertySheetHolder
PropertySheetHolder.PropertySheet
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String
actuatorName
protected Length
backoffDistance
protected Location
feedEndLocation
protected double
feedSpeed
protected Location
feedStartLocation
protected Location
partPick
protected java.lang.String
peelOffActuatorName
protected ReferenceDragFeeder.Vision
vision
protected Location
visionOffset
-
Fields inherited from class org.openpnp.machine.reference.ReferenceFeeder
location
-
Fields inherited from class org.openpnp.spi.base.AbstractFeeder
enabled, feedRetryCount, id, name, part, partId, pickRetryCount, retryCount
-
-
Constructor Summary
Constructors Constructor Description ReferenceDragFeeder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addPropertyChangeListener(java.beans.PropertyChangeListener listener)
void
addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
void
feed(Nozzle nozzle)
Commands the Feeder to do anything it needs to do to prepare the part to be picked by the specified Nozzle.java.lang.String
getActuatorName()
Length
getBackoffDistance()
PropertySheetHolder[]
getChildPropertySheetHolders()
Wizard
getConfigurationWizard()
Gets a Wizard that can be used to configure this object.Location
getFeedEndLocation()
java.lang.Double
getFeedSpeed()
Location
getFeedStartLocation()
Length
getPartPitch()
java.lang.String
getPeelOffActuatorName()
Location
getPickLocation()
Gets the Location from which the currently available Part should be picked from.javax.swing.Action[]
getPropertySheetHolderActions()
java.lang.String
getPropertySheetHolderTitle()
ReferenceDragFeeder.Vision
getVision()
boolean
isPart0402()
void
removePropertyChangeListener(java.beans.PropertyChangeListener listener)
void
removePropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
void
resetVisionOffsets()
void
setActuatorName(java.lang.String actuatorName)
void
setBackoffDistance(Length backoffDistance)
void
setFeedEndLocation(Location feedEndLocation)
void
setFeedSpeed(java.lang.Double feedSpeed)
void
setFeedStartLocation(Location feedStartLocation)
void
setPartPitch(Length partPitch)
void
setPeelOffActuatorName(java.lang.String actuatorName)
void
setVision(ReferenceDragFeeder.Vision vision)
java.lang.String
toString()
-
Methods inherited from class org.openpnp.machine.reference.ReferenceFeeder
getJobPreparationLocation, getLocation, prepareForJob, setLocation
-
Methods inherited from class org.openpnp.spi.base.AbstractFeeder
canTakeBackPart, getFeedRetryCount, getId, getName, getPart, getPickRetryCount, getPropertySheetHolderIcon, getPropertySheets, isEnabled, postPick, setEnabled, setFeedRetryCount, setName, setPart, setPickRetryCount, takeBackPart
-
Methods inherited from class org.openpnp.model.AbstractModelObject
dispose, dumpListeners, fireIndexedPropertyChange, firePropertyChange, isListener, isListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.openpnp.spi.Feeder
isPartHeightAbovePickLocation
-
Methods inherited from interface org.openpnp.model.Solutions.Subject
findIssues, getSubjectIcon, getSubjectText
-
-
-
-
Field Detail
-
feedStartLocation
protected Location feedStartLocation
-
feedEndLocation
protected Location feedEndLocation
-
feedSpeed
protected double feedSpeed
-
actuatorName
protected java.lang.String actuatorName
-
peelOffActuatorName
protected java.lang.String peelOffActuatorName
-
vision
protected ReferenceDragFeeder.Vision vision
-
backoffDistance
protected Length backoffDistance
-
visionOffset
protected Location visionOffset
-
partPick
protected Location partPick
-
-
Method Detail
-
getPickLocation
public Location getPickLocation() throws java.lang.Exception
Description copied from interface:Feeder
Gets the Location from which the currently available Part should be picked from. This value may not be valid until after a feed has been performed for Feeders who update the pick location. The location Z might mean part underside or part surface, depending on the feeder type, as determined byFeeder.isPartHeightAbovePickLocation()
.- Returns:
- Throws:
java.lang.Exception
-
feed
public void feed(Nozzle nozzle) throws java.lang.Exception
Description copied from interface:Feeder
Commands the Feeder to do anything it needs to do to prepare the part to be picked by the specified Nozzle. If the Feeder requires Head interaction to feed it will perform those operations during this call.- Parameters:
nozzle
- The Nozzle to be used for picking after the feed is completed. The Feeder may use this Nozzle to determine which Head, and therefore which Actuators and Cameras it can use for assistance.- Throws:
java.lang.Exception
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
resetVisionOffsets
public void resetVisionOffsets()
-
isPart0402
public boolean isPart0402()
-
getFeedStartLocation
public Location getFeedStartLocation()
-
setFeedStartLocation
public void setFeedStartLocation(Location feedStartLocation)
-
getFeedEndLocation
public Location getFeedEndLocation()
-
setFeedEndLocation
public void setFeedEndLocation(Location feedEndLocation)
-
getPartPitch
public Length getPartPitch()
-
setPartPitch
public void setPartPitch(Length partPitch)
-
getFeedSpeed
public java.lang.Double getFeedSpeed()
-
setFeedSpeed
public void setFeedSpeed(java.lang.Double feedSpeed)
-
getActuatorName
public java.lang.String getActuatorName()
-
setActuatorName
public void setActuatorName(java.lang.String actuatorName)
-
getPeelOffActuatorName
public java.lang.String getPeelOffActuatorName()
-
setPeelOffActuatorName
public void setPeelOffActuatorName(java.lang.String actuatorName)
-
getBackoffDistance
public Length getBackoffDistance()
-
setBackoffDistance
public void setBackoffDistance(Length backoffDistance)
-
getVision
public ReferenceDragFeeder.Vision getVision()
-
setVision
public void setVision(ReferenceDragFeeder.Vision vision)
-
addPropertyChangeListener
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
- Overrides:
addPropertyChangeListener
in classAbstractModelObject
-
addPropertyChangeListener
public void addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
- Overrides:
addPropertyChangeListener
in classAbstractModelObject
-
removePropertyChangeListener
public void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
- Overrides:
removePropertyChangeListener
in classAbstractModelObject
-
removePropertyChangeListener
public void removePropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
- Overrides:
removePropertyChangeListener
in classAbstractModelObject
-
getConfigurationWizard
public Wizard getConfigurationWizard()
Description copied from interface:WizardConfigurable
Gets a Wizard that can be used to configure this object.- Returns:
-
getPropertySheetHolderTitle
public java.lang.String getPropertySheetHolderTitle()
-
getChildPropertySheetHolders
public PropertySheetHolder[] getChildPropertySheetHolders()
-
getPropertySheetHolderActions
public javax.swing.Action[] getPropertySheetHolderActions()
-
-