项目作者: v-zhuravlev

项目描述 :
Simple zabbix script, to get values from Siemens S7 PLCs using snap7 suite
高级语言: Python
项目地址: git://github.com/v-zhuravlev/zbx_s7_get.git
创建时间: 2019-12-25T13:17:24Z
项目社区:https://github.com/v-zhuravlev/zbx_s7_get

开源协议:MIT License

下载


zbx_s7_get

Simple Zabbix python3 script, to get values from Siemens S7 PLCs using snap7 suite and python-snap7.

Install

Example for Zabbix server/proxy running on Centos 7:

  1. Download snap7 from https://sourceforge.net/projects/snap7/files/
  2. Install snap7:
  1. 7za x snap7-full-1.4.2.7z
  2. sudo yum groupinstall 'Development Tools'
  3. cd snap7-full-1.4.2/build/unix
  4. make -f x86_64_linux.mk
  5. sudo make -f x86_64_linux.mk install
  6. sudo ldconfig
  1. Install python-snap7:

sudo python3 -m pip install python-snap7

  1. Copy s7_get.py to /usr/lib/zabbix/externalscripts/:
  1. cp s7_get.py /usr/lib/zabbix/externalscripts
  2. chmod +x /usr/lib/zabbix/externalscripts
  1. Test the script by running it directly from shell:
  1. $ ./s7_get.py 172.10.1.1 0 0 66 2 int
  2. 6

Setup in Zabbix

Create new item:

  • Type: External check
  • Key: s7_get.py[<s7_ip_address>,<s7_rack>,<s7_slot>,<DB>,<offset>,<datatype>], where datatype = int,bool or float.

For example:

image