Control de una unidad de levas con un eje de tiempo virtual
Ver el PLCopenMulti.project proyecto de ejemplo en el directorio de instalación de CODESYS por debajo ..\CODESYS SoftMotion\Examples.
Este ejemplo demuestra cómo implementar una leva periódica en un accionamiento lineal. El ejemplo también demuestra cómo utilizar la función de empujador.
- Inserte una cámara llamada - Exampleen el árbol de dispositivos a continuación Solicitud. Abra la cámara en el editor.
- Defina un empujador en el Alzaválvulas pestaña. - X: - 8.0
- Pase positivo: - Invert
- Pase negativo: - Invert
 
- Inserte una unidad virtual llamada - Driveen el árbol de dispositivos a continuación Piscina SoftMotion General Axis. Para este eje, seleccione el tipo de eje Modulo con un valor de módulo de- 360.
- Inserte otra unidad virtual llamada - Virtual. Para este eje, seleccione el Modulo tipo de eje con un valor de módulo de- 10.
- Crear un MOTION_PRG programa en CFC. - PROGRAM MOTION_PRG VAR power1, power2: MC_Power; TableSelect: MC_CamTableSelect; CamIn: MC_CamIn; Tappet: SMC_GetTappetValue; MoveVirtual: MC_MoveVelocity; END_VAR
- Insertar un elemento de caja y asignar la variable - power1lo. El elemento de caja se utiliza para encender el- Drive.- Configure las entradas de la siguiente manera: - Eje: - Drive
- Habilitar: - TRUE
- bRegulatorOn: - TRUE
- bDriveStart - TRUE
 
- Insertar un elemento de caja y asignar la variable - power2lo. El elemento de caja se utiliza para encender el- Virtualconducir.- Configure las entradas de la siguiente manera: - Eje: - Virtual
- Habilitar: - TRUE
- bRegulatorOn: - TRUE
- bDriveStart - TRUE
 
- Insertar un elemento de caja y asignar la variable - MoveVirtuallo. El elemento de caja se utiliza para mover el maestro virtual.- Configure las entradas de la siguiente manera: - Eje: - Virtual
- Ejecutar: - power2.Status
- Velocidad: - 2
- Aceleración - 10
- Desaceleración - 10
- Dirección - positive
 
- Insertar un elemento de caja y asignar la variable - TableSelectlo. El elemento de caja se utiliza para seleccionar una leva.- Configure las entradas de la siguiente manera: - Maestría: - Virtual
- Esclavo: - Drive
- CamTable: - Example
- Ejecutar - TRUE
- Periódico - TRUE
- Maestro Absoluto - TRUE
- Esclavo Absoluto - TRUE
 
- Insertar un elemento de caja y asignar la variable - CamInlo. El elemento de caja implementa la placa de levas seleccionada.- Configure las entradas de la siguiente manera: - Maestría: - Virtual
- Esclavo: - Drive
- Ejecutar - power1.Status
- MasterOffset: - 0
- SlaveOffset: - 0
- MasterScaling: - 1
- Esclavo Escalado: - 1
- StartMode: - absolute
- CamTableID: - TableSelect.CamTableID
- VelocityDiff: - 1
- Aceleración: - 1
- Desaceleración: - 1
- Tappet Histéresis: - 1
 
- Insertar un elemento de caja y asignar la variable - Tappetlo. El elemento de caja comprueba el ajuste del interruptor de leva.- Configure las entradas de la siguiente manera: - Tappets: - CamIn.Tappets
- iID: - 1
- bInitValue - FALSE
- bSetInitValueAtReset: - FALSE
 - El empujador se define como un empujador inversor. Por esta razón, su valor se cambia cada 10 segundos. 
- El proyecto de muestra proporciona una visualización para comprobar los bloques de función individuales y la posición de los ejes. 
- Agregue la llamada del - MOTION_PRGprograma a la tarea Tarea principal.
- Descargue el proyecto al controlador e inícielo. 
Para más información, ver: