๐Ÿ“–
Code and Compile Wiki
E-Learning SchoolYouTubeLinkedIn
  • Code and Compile Wiki
  • ๐ŸŒŽQuick Links
    • ๐Ÿ“ƒGitHub
    • ๐Ÿ‘ฉโ€๐Ÿ’ปLinkedIn
    • ๐Ÿ“ธInstagram
    • ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘งFacebook Group
  • ๐ŸขThe Company
    • ๐Ÿ’ฅVision and Values
    • ๐Ÿ˜ŽMeet the Creator!
    • ๐Ÿ’ธDiscount: 20% OFF
  • ๐ŸญFactory Automation
    • Industrial Control
    • Digital Twin
      • FACTORY IO
        • Tasks and Solutions
        • FACTORY IO Scene
      • Simumatik
        • 01: Introduction to Simumatik
        • 02: Conveyor ON-OFF control
        • 03: Conveyor direction control
        • 04: Motor Control with Codesys
        • 05: Electro-Pneumatics with S7-1200 PLC
        • 06: Control IoT Device with MQTT
        • ๐Ÿ“šResources
    • PLC
      • Allen Bradley
        • Micro850 PLC
          • PLC Exercises - Part 1
          • PLC Exercises - Part 2
        • Micrologix 1000 PLC
        • Micrologix 1400 PLC
      • Delta Electronics
        • DVP 14SS2
        • DVP 12SE
        • DVP 10SX
        • PLC Exercises 1
      • Omron
      • PLCnext
      • Siemens
        • S7-200
        • S7-1200 (Basic)
          • ๐Ÿ“™Course Presentations
          • ๐Ÿ“„TIA Projects
        • S7-1200 (Advanced)
          • ๐Ÿ“™Course Presentation and Projects
          • ๐Ÿ“™HMI Presentations and Projects
      • Codesys
        • Exercises - Part 1
      • WAGO CC100
      • Schneider
        • PLC Exercises
    • Safety Controller
      • Banner SC10 Series
        • 1: Introduction to Safety Controller SC10
        • 2: Interfacing SC10 controller with PC
        • 3: Programming SC10 controller
        • 4: RF door switch safety circuit
        • 5: E-Stop safety circuit
        • 6: E-Stop safety circuit with ext. Reset
        • 7: Indicating fault on Manual reset button
        • 8: Interfacing S7-1200 PLC with SC10
        • 9: Reading virtual Non-safety inputs via PROFINET
        • 10: Bypassing the Magnetic switch via PROFINET
        • 11: Monitoring safety signals on Node-RED Dashboard
        • ๐Ÿ“šResources
    • AC Drives
      • Allen Bradley
        • PowerFlex 400
      • Delta Electronics
        • VFD M-Series
        • Servo Drives ASDA-B Series
    • HMI
      • Weintek
      • Delta HMI
      • Siemens KTP400
        • Error 1: Missing Panel images
    • 3D Camera
    • SCADA
      • Ignition SCADA
  • ๐ŸŒŽIIoT
    • Introduction to IIoT
      • Importance of Unified namespace
    • IIoT Devices
      • Arduino
      • ctrlX CORE
        • ๐Ÿ“น01- Using ctrlX CORE as PLC and Node-RED Server
        • ๐Ÿ“น02- Using ctrlX CORE as MQTT Broker
        • ๐Ÿ“น03- Interfacing ctrlX CORE with ctrlX I/O via EtherCAT
        • ๐Ÿ“น04- Introducing ctrlX CORE IDE App
        • ๐Ÿ“น05- Connecting OT with IT using Bosch DeviceBridge app
        • ๐Ÿ“น06- Interfacing ctrlX CORE with IO-Link master using EtherCAT
        • ๐Ÿ“น07- ctrlX CORE as HMI- Part 1
        • ๐Ÿ“น08- ctrlX CORE as HMI- Part 2
        • ๐Ÿ”—Virtual ctrlX WORKS
      • Raspberry Pi
      • Revolution Pi
      • Weintek cMT-G01
      • Banner Snap Signal
    • IIoT Tools
      • SIGNL4
      • Node-RED
        • Tips
      • OPC UA
        • ๐Ÿ–ฅ๏ธOPC UA Course
        • ๐Ÿ’กTroubleshooting
          • ๐Ÿ“ƒCertificate error in Node-RED
      • MySQL
      • MQTT
      • IO-Link
        • SICK
  • ๐Ÿ‘จโ€๐Ÿ”ฌResources
    • Yearly Subscription Guideline
    • Based on Courses
    • Books and Guides
    • Computer configuration
    • Hardware and Software
    • ๐Ÿ“‘Articles
      • ๐Ÿ‘จโ€๐Ÿ’ปModbus Addressing
  • โš™๏ธProjects
    • SmartFactory
Powered by GitBook
On this page
  • Section 1 - Series & Parallel Circuits (LD, LDI, OUT)
  • Section 2 - Latching & Interlocking Circuits โ€“ Using OUT Commands
  • Section 3 - Latching & Interlocking Circuits โ€“ Using SET/RESET Commands
  • Section 4 โ€“ Use to Timers (TMR)
  • Section 5- Use of Timers (TMR) with Comparison Commands
  • Section 6- Use of Counters (CNT) with Comparators Commands
  • Section 7- Use of Data Register (D0) & related commands MOV, RST, ADD, SUB, MUL, DIV & INC/DEC

Was this helpful?

  1. Factory Automation
  2. PLC
  3. Delta Electronics

PLC Exercises 1

Practice your PLC Programming skills using these exercises

PreviousDVP 10SXNextOmron

Last updated 8 months ago

Was this helpful?

If you receive error while executing your logic, it could be because you cannot normally actuate inputs (X0, X1, X2 and so on..) in the simulator so in this case, kindly practice your exercise using memory bits (M0, M1, M2 and so on..) instead of inputs (X0, X1, X2 and so on..)

If you are using AHCPU, you should use input bits as X0.0, X0.1 instead of X0, X1 and outputs as Y0.0, Y0.1 instead of Y0, Y1 and so on.

Section 1 - Series & Parallel Circuits (LD, LDI, OUT)

  1. Code a logic when X0 is ON, Y0 should be ON and when X0 is OFF, Y0 should be OFF.

  2. Code a series logic such that when X0 & X1 is ON, Y0 is ON

  3. Code a Parallel Input logic such that when either of X0 or X1 is ON, Y0 is ON

  4. Code a Parallel Output logic such that when X0 is ON, Y0 & Y1 are ON

  5. Code a logic when X0 is ON, Y0 is ON & Y1 is OFF & when X0 is OFF, Y1 should be ON & Y0 should be OFF

Section 2 - Latching & Interlocking Circuits โ€“ Using OUT Commands

  1. Code a logic when X0 is pressed, Y0 should be latched & when X1 is Pressed, Y0 should be unlatched. (In this case consider X0 and X1 as NO Push Button)

  2. Code a logic to interlock Y0 & Y1 using X0 & X1. Consider X0 & X1 as NO Push Buttons & use X2 as NC Push Button to reset Y0 & Y1.

Section 3 - Latching & Interlocking Circuits โ€“ Using SET/RESET Commands

  1. Code a logic when X0 is pressed, Y0 should be latched & when X1 is Pressed, Y0 should be unlatched. (In this case consider X0 and X1 as NO Push Button)

  2. Code a logic to interlock Y0 & Y1 using X0 & X1. Consider X0 & X1 as NO Push Buttons & use X2 as NC Push Button to reset Y0 & Y1.

Section 4 โ€“ Use to Timers (TMR)

  1. Code a Logic such that when X0 is ON, Y0 gets ON after delay of 5 secs. When X0 is OFF, Y0 should be OFF

  2. Do the similar operation, but delay should change to 0.05 seconds (or 50ms)

  3. Do the similar operation, but delay should change to 0.005 seconds (or 5ms)

  4. Code a Logic when X0 is ON, Y0 gets ON after 3 seconds delay & then after delay of 3 more seconds Y1 should be on & after delay of 3 seconds Y2 should be ON.

  5. Code a Logic, when X0 is ON, Y0 is ON for 10 seconds then OFF.

  6. Code a Logic that can be used to start a Motor 1 (Y0) using X0 (NO) and then after a delay of 10 sec start Motor 2 (Y1). When the Motor 1 is switched off using X1(NC) there should be delay of 10 sec before the Motor 2 is off.

  7. Code a Logic in which Y0 is ON (latch) only when X1 (NO) is ON in 10 sec. just after start of the Switch X0 (NO). Otherwise if X1 is pressed after 10 sec. Nothing should happen. Unlatch Y0 when X0 is OFF.

Section 5- Use of Timers (TMR) with Comparison Commands

  1. Use one push button (X0) to turn ON Y0 in following sequence: Y0 on for 2 sec. then off for 2 sec. then on for 3 sec. then continuously off.

  2. Use X0 to blink Y0. (On Time 0.5 second & OFF time 0.5 second).

  3. Use X0 to blink Y0. (On Time 0.5 second & OFF time 1 second).

  4. When you press X0, Y0 and Y1 should blink with the delay of 1 sec continuously (such that 1 sec. ON & 1 sec. OFF) and when you press X1, Y0 and Y1 should blink with the delay of 1.5 sec. (such that 1.5 sec. ON & 1.5 sec. OFF)

  5. Code a basic Traffic Light Simulator such that when you press X0 following sequence should occur

Section 6- Use of Counters (CNT) with Comparators Commands

  1. Code a logic such that When X0 is pressed 3 times, Y0 should be ON.

  2. Code a logic such that When X0 is pressed 3 times, Y0 should be ON & when X1 is pressed Y0 should be OFF (Use Counter reset command)

  3. Code a logic in which Sensor (X1) is being used to count the bottles on the conveyor (Y0) which is being latched by X0. Use X0 to latch the conveyor & after X1 counts 10, conveyor should be unlatched.

  4. Code a logic in which

    • When X1 is pressed onceโ€“ Y0 gets ON, Y1, Y2 get off,

    • When X1 is pressed twice โ€“ Y1 gets ON and Y0, Y2 get OFF

    • When X1 is pressed thrice โ€“ Y2 gets ON and Y0, Y1 get OFF

    • When X1 is pressed fourth time, all outputs should be OFF & Cycle should repeat on pressing X1 again

Section 7- Use of Data Register (D0) & related commands MOV, RST, ADD, SUB, MUL, DIV & INC/DEC

  1. Switch ON a Lamp (Y0) after 5 sec. Make a provision using โ€œMOVโ€ command to change the delay time to 10 second by pressing X1 & then back to 5 sec by pressing X2. You have 1 maintained button (X0) and 2 push buttons only. Maintained button to switch on/off the lamp. Other two push button for changing the time from 5 to 10 sec and viceversa

  2. Code a logic to Change the time of above timer using Increment & (X3- PB) Decrement (X4- PB) commands.

  3. Code a logic to blink the output Y0 using X0 with following delay time sequence using MOV command a. Default Delay Time = ON time 1 Second & OFF Time 1 second b. Case A, When X1 is pressed = ON time 2 seconds & OFF time 1 second c. Case B, When X2 is pressed = ON time 1.5 seconds & OFF Time 2 seconds

  4. Code a logic as above but change the time using Increment (X1) & Decrement (X2) functions such that minimum blinking time should be 0.5 seconds (ON/OFF) & maximum should be 3 seconds (ON/OFF). The step of Increment & Decrement should be 0.1 second

  5. I have a constant 10 in D0

    • Multiply it with 100

    • Add 56 to it

    • Subtract 14 from it

    • Finally store it in D10

๐Ÿญ