oil-pumpjack
oil-pumpjack copied to clipboard
Oil Pumpjack: open source materials to create your own oil pumpjack managed by an Arduino
Oil Pumpjack
This repository contains all the materials to create your own oil pumpjack. The purpose of this project is to provide a safe learning environment. The current version supports Modbus over TCP and EtherNet/IP protocol. For more details and to see how to build it, please refer to our publication.
3-D print models
The repository /stl contains the .stl objects. You can 3-D print these object to create the oil pumpjack
- Object 1 is the pump.
- Object 2 is the motor, which activates the pump.
- Object 3 is where the three boards are located. It also contains the gauge that shows the speed level.
Arduino Schematic
Modbus over TCP Version
The Modbus over TCP version of the pumpjack is in the repository /arduino_modbus. Here is the subdirectories:
- /arduino_modbus/pumpjack_modbus contains the Arduino Uno source code
- /arduino_modbus/HMI contains the Human Machine Interface source code
- /arduino_modbus/python contains several python scripts to test the communication to the pump
- /arduino_modbus/plcscan contains the source code of a PLC scanner tool (the tool available here)
EtherNet/IP Version
The EtherNet/IP version is in the directory /arduino_ENIPCIP. Here is the subdirectories:
- /arduino_ENIPCIP/pumpjack_ENIPCIP contains the Arduino Uno source code
- /arduino_ENIPCIP/python contains several python scripts to test the communication to the pump
- /arduino_ENIPCIP/pcap contains the pcap files used to create the protocol