External interrupt using capacitive label sensor with Arduino based industrial PLC

January 17, 2019 by
External interrupt using capacitive label sensor with Arduino based industrial PLC
Bernat Garcia

Introduction


The KSSTI 600/80 FG3LK-IBS is a capacitive level sensor that allows to control when a label is passing through it. This sensor is digital and normally must be handled with interrupts. In this case example is showed how to use this sensor using external interrupts.


Requirements


Ethernet PLC or 20 I/Os PLC:    Ethernet PLC       20 I/Os PLC

KSSTI 600/80 FG3LK-IBS:   KSSTI 600/80 FG3LK-IBS sensor

Industrial Power supply:   Industrial Shields Accessories

Industrial Shields boards:  Install Industrial Shields boards


Description

KSSTI 600/80 FG3LK-IBS:  









Technical information












Operating principle
Capacitive













Fork opening
0,6 mm













Branch length inside
85 mm













Service voltage
10 ... 35 V DC













No-load current
< 70 mA













Sensitivity adjustment
Teach key + remote teach













Switching output
Push pull, 200 mA, NO/NC, switchable







Other important data:

Label length: > 2 mm

Label interspace:  > 2 mm

Label thickness: < 0,5 mm

Voltage drop: < 2,5 V

Connection: Connector, M12, 4-poled

Connecting cable: VK ...

Drawing :

KSSTI 600/80 FG3LK-IBS - External interrupt using capacitive label sensor with Arduino


Connections

Final Connection: 

Final connection - External interrupt using capacitive label sensor with Arduino


Software

This simple sketch allows us to perform digital reading counting of the KSSTI 600/80 FG3LK-IBS label sensor every 1 sec. For this, we have used the input I0.5 of our M-Duino 21+. I0.5 allows external interrupt functionality, so we must add the attachInterrupt() function to set the interrupt functionality. 

As a test, we will check the result monitored by the serial port, open the serial monitor to see the counting levels.


CODE:

/*
   Copyright (c) 2018 Boot&Work Corp., S.L. All rights reserved

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
 
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program.  If not, see <http://www.gnu.org/licenses/>.
   
 */

////////////////////////////////////////////////////////////

volatile int counter = 0;

void setup() {
   Serial.begin(9600L);
   attachInterrupt(digitalPinToInterrupt(I0_5), count, RISING);
   Serial.println('KSSTI 600/80 FG·LK-IBS started');
}

////////////////////////////////////////////////////////////

void loop() {
  Serial.println(counter);
  delay(1000); 
}

void count() {
  counter+=1;
}


 Video


Capacitive Label sensor using an Arduino based PLC


 
 

​Search in our Blog

External interrupt using capacitive label sensor with Arduino based industrial PLC
Bernat Garcia January 17, 2019
Share this post

Looking for your ideal Programmable Logic Controller?

Take a look at this product comparison with other industrial controllers Arduino-based. 

We are comparing inputs, outputs, communications and other features with the ones of the relevant brands.


Industrial PLC comparison >>>