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

New CO2 stage #35

Open
jirhiker opened this issue Jan 6, 2022 · 5 comments
Open

New CO2 stage #35

jirhiker opened this issue Jan 6, 2022 · 5 comments

Comments

@jirhiker
Copy link
Member

jirhiker commented Jan 6, 2022

added new co2 stage with encoders. replaced X and Y. Z and the motion controller keep the same

needed to make new cables for X and Y. required limit signals to be inverted. added hex inverters to both cables.

updated stage1.ini and stage2.ini config files.
added EncoderType
changed DisplacementFullStep=0.0127 10TPI, 200 step == 0.0127 mm/step
set EncoderResolution=0.001 == 1 micron in mm

@jirhiker
Copy link
Member Author

Moved original diode stage back to the diode

@jirhiker
Copy link
Member Author

configured x and y stages

@jirhiker
Copy link
Member Author

jirhiker commented Jan 20, 2022

[NMGRL@Y@CO2]

; ---- Global stage parameters
;---<Stage.GenericInformation>
ConfigurationComment = 
ControllerCompatibility = XPS-ESP302
Unit = mm
SmartStageName =

; ---- Motor driver parameters
;---<Driver.DRV11LAnalogStepperPosition>
DriverName = XPS-DRV11L
DriverMaximumRMSCurrent = 1.0 ; Amp
DriverRMSIntegrationTime = 3 ; Sec
DriverMotorResistance = 7.4 ;Ohm
DriverMotorInductance = 0.0021 ;Henry
DriverCutOffFrequency = 5000 ;Hz
DriverBemfCompensationGain = 1

; ---- Driver command interface parameters
;---<MotorDriverInterface.NoMotorInterface>
MotorDriverInterface = AnalogStepperPosition
DelayAfterMotorOnToSetClosedLoop = 0.05 ; sec   # Not used in all firmwares
DisplacementPerFullStep = 0.0127; Unit
PeakCurrentPerPhase = 0.5 ; Amp
StandbyPeakCurrentPerPhase = 0.5 ; Amp
BaseVelocity = 0 ; Unit/Sec
ScalingCurrent = 6.4; Amp




; ---- Position encoder interface parameters
;---<Encoder.NoEncoder>
EncoderType = AquadB
EncoderResolution =0.001 ; Units
LinearEncoderCorrection = 0 ;--- ppm 

;EncoderZMPlug = Encoder 
;EncoderInterpolationFactor = 4000
;EncoderScalePitch = 0.001 ;--- units 

EncoderSinusOffset = 0 ;--- V 
EncoderCosinusOffset = 0 ;--- V 
EncoderPhaseCompensation = 0 ;--- deg 
EncoderDifferentialGain = 0
PositionerMappingFileName = 
PositionerMappingLineNumber = 
PositionerMappingMaxPositionError = ;--- units 
EncoderIndexOffset = 0 ;--- units 
EncoderHardInterpolatorErrorCheck = Enabled

CorrectorType=PIPosition 
ClosedLoopStatus = Closed 
FatalFollowingError = 1 ;--- units
KP=0.185
KI=0.015
KD=0
KS = 0.9
GKP = 0 
GKD=0 
GKI=0
KForm = 0 ;--- units
IntegrationTime = 1E+99 ;--- s 
DerivativeFilterCutOffFrequency = 5000 ;--- Hz 
DeadBandThreshold = 0.00025 ;--- units
KFeedForwardAcceleration = 10 
KFeedForwardVelocity = 3
KFeedForwardVelocityOpenLoop = 1
NotchFrequency1 = 0 ;--- Hz 
NotchBandwidth1 = 0 ;--- Hz
NotchGain1 = 0
NotchFrequency2 = 0 ;--- Hz 
NotchBandwidth2 = 0 ;--- Hz
NotchGain2 = 0
KFeedForwardJerk = 0
VoltageLimit = 48

;--- Motion done condition mode parameters 
MotionDoneMode = Theoretical


; ---- Travels and servitudes type parameters
;---<Servitudes.NoServitudes>
ServitudesType = StandardEORDriverPlug
MinimumTargetPosition = -170 ; Unit
MaximumTargetPosition = 170 ; Unit

; ---- Backlash parameters
;---<Backlash.Standard>
Backlash = 0 ;Units
CurrentVelocityCutOffFrequency = 100 ;Hz
CurrentAccelerationCutOffFrequency = 100 ;Hz

; ---- Profile generator parameters
;---<Profiler.Sgamma>
MaximumVelocity = 7.62 ; Units/Sec
JogMaximumVelocity = 2.5; Units/Sec # Not used by all firmwares
MaximumAcceleration = 30 ; Units/Sec²
JogMaximumAcceleration = 2.5 ; Units/Sec² # Not used by all firmwares
EmergencyDecelerationMultiplier = 4
MinimumJerkTime = 0 ; Sec
MaximumJerkTime = 0; Sec
JogJerkTime = 0; Seconds
TrackingCutOffFrequency = 25 ;Hz

; ---- Home search process parameters
;---<HomeSearch.NoHomeSearch>
HomeSearchSequenceType = MinusEndOfRunHomeSearch
HomeSearchMaximumVelocity = 1.5 ; Unit/Sec
HomeSearchMaximumAcceleration = 2 ; Unit/Sec²
HomeSearchTimeOut = 50; Sec
HomingSensorOffset = 0 ; Unit
HomePreset = -25 ; Unit

@jirhiker
Copy link
Member Author

KP=0.185
KI=0.15

these seem like good parameters. -0.003 immediately then takes a few seconds to completely eliminate the error

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

1 participant