Jump to content

Recommended Posts

Dear support and forum members,


My name is Robin from the Netherlands, and my boss gave me the ambitious opportunity to program a seemingly easy wood-sanding machine. For this project we bought a Vision130 (V130-33-R34)


The machine has:

-A conveyor belt for transporting a wooden board, with frequency regulator for the speed.

-A safety door lock. (Machine should only be operational when this door is locked)

-4 motorized, rotating sanding brushes (2 of these brushes have frequency regulators for the speed.)

-4 motorized height adjustments for the sanding rolls (with encoders). 

-Thermal protection.

-The standard buttons like: main switch, emergency stop button, start / stop button, and also an electronic stop.


As I'm completely new to ladder programming, I'm struggling with some issues already. I'm familiar to programming languages such as C#, C++, SQL and I know a little Structured Text.


I need to address Memory Integers to some states of the machine (so I can 'use' the output of the last line as a condition (input) for the next line. I chose not to use a Memory Bit, so I can address multiple states.


In the file that I enclosed in this post, there is the program as far as I could get it to this point. I do understand many of the logic that comes with this machine, however my background is software engineering with no knowledge of PLC's or electronic components. I find it difficult to understand some of the tutorials and manuals that I have read so far.


Hopefully there is a smart guy or girl who can help me with this.


Regards, Robin











Schuurmachine PLC Ladder.vlp

Link to comment
Share on other sites

Haven't look at the program yet.  I will later today.


Some general tips.


1) Never trust the software to work right. (Sorry, see point 2)


2) Your emergency stop should be a hardwired stop to completely cut power to the system, never software.  In the US, and I believe most European countries as well a software emergency stop is not acceptable under government regulation because software can lock up and not respond correctly.





I attached how I would organize your ladder logic to make it easier to follow.  I did not change the logic of the program to this point


A couple of things that will help a lot.


1) Try to get out of the software mindset and think in hardware terms.  Input on the left, output on the right of the ladder (Not required but useful).  It will help you immensely when building the logic ladders (If you use that route). 


2) Make sure you really understand how the program scan cycle works, keep in mind if you use other PLCs it may be different.   Unitronics follows this basic process each scan. 

  • Read physical inputs and map to memory
  • Run the ladder logic.  Scans left to right, top to bottom. 
  • Write physical outputs
  • Updates HMI
  • Communications

3) Something else that may help you is using subroutines to block off your logic into more manageable chunks.  I usually run a digital input subroutine, an analog input subroutine, a digital output subroutine, and multiple subroutines for different logic sets.  Purely a personal preference though.  If you'd like I can provide an example of how I do this.


As for your program requirements hardware wise you need at least the following

  1. Motor safety cutoff should be controlled through a hardware relay designed for safety operations that defaults to normally open.  Also should allow you to input a digital signal into the PLC to let the program know as well.
  2. Minimum 4 analog inputs for the encoders
  3. 3 PWM style digital outputs for the frequency encoders (possibly depending on that hardware)
  4. A handful of digital inputs for various buttons (assuming remote mount)
  5. Hardwired E-Stop for power to the system.

Questions for the program

  1. Thermal protection for what? You'll need either analog input or digital input depending on the sensor type you use.
  2. What states are you attempting to monitor?  Why do you need an integer to do it?  It may seem easier to use an integer but this is necessarily always the case.


conveyor v2.vlp

  • Upvote 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...