260 likes | 385 Vues
This project presents an in-depth exploration of an Arduino-based temperature controller integrated with Ethernet functionalities. It covers essential components such as microprocessors, temperature sensing, and the role of PID control loops. We will review the setup, including a solid-state relay and local LCD for user feedback. Key topics include Arduino architecture, common libraries, and communication protocols like Modbus and I2C. The presentation culminates in discussing security issues related to microprocessor-based systems and real-world applications in industrial settings.
E N D
ECE504 ST ProjectJeff Rice Arduino Based Temperature Controller, Ethernet Enabled **Please Click on Icon to Hear Sound, then click On slide when sound over to advance**
Presentation Structure • Arduino Overview • Review of Temperature Controller Project stages and results • Microprocessors role in industrial & utility controllers
Arduino Overview Pin connectors for I/O Serial port interface (SPI) Crystal Oscillator (clock source) USB port and onboard USB-serial chip allows easy programming in C language Volt Regulator – to allow wide input voltage range Brains – Atmel ATMega RISC microprocessor with pre-loaded bootloader Result - $30 microproc. Based dev. Development board with wide usage and many open source libraries.
Arduino: Open Source Enabled Actuators: LEDs, Solenoids, Motors Peripherals: LCDs, remote I/O (I2C) Direct Inputs: Heat, Light, Motion Arduino Board • Libraries • LCD • I2C • PID • CapSense • LowPower • Modbus • Zigbee • X10 (PLC) • Servo • SD Card • Stepper Motor • Text Messaging • Printing • Tones PC or Mac running Arduino IDE
Thyristor Review • Thyristors are widely used three terminal power semiconductors – if you gate it the unit conducts until reversed biased. • Mature technology, mass produced and widely used for motor drives & inverters • Gate not isolated from Cathode
Thyristor Trouble (continued) • 5v gate signal driven by micro and power supply, thyristor cathode and anode hooked to AC mains supply.
Using a Solid State Relay • Duty cycle control over 1 second interval • 120 segment resolution (# of half sine waves)
Image by Tony van Roon (http://www.sentex.ca/~mec1995/gadgets/relays/relays.html)
Hardware Setup AC Breaker Digital Temperature Sensor Arduino Local LCD HMI Heating Element Solid State Relay
PID Control Loops Overview • PID Loops: very common control loop • PID = Proportional, Integral, Derivative • Controlled Variable, Setpoint, Output Image source = Wikipedia http://en.wikipedia.org/wiki/File:PID_en.svg
Simple Web Setup Any Computer with a Web Browser Web Browser Ethernet Ethernet Expansion Board with Wiznet 5100 TCP/IP Chip Arduino Unit PID Library Ethernet Library SSR Firing Routine One Wire Comm.
Simple Web Result • Virtual Emulation of Local LCD Display with ability to change setpoint
Full HMI Setup Inductive Automation Ignition Runtime and IDE Status Module HMI IDE and Runtime Historian Database & Drivers OPC Kepware I/O Server USB Arduino Unit PID Library Modbus Library Register Data SSR Firing Routine I2C Comm
Kepware I/O Server • Handles communication to hardware, data concentration and status flagging
Need for Local Control • Note that processor controls the process, not the HMI. • No critical process data routed through HMI. • LCD Serves as Backup indication • Typically a real critical process would have a “hard” backup to the controller
Arduino Ethernet boardSecurity Issues • Based on Wiznet5100 chip • Found published errata on chip
Bridge to PLCs • In Process Control we don’t hear people talk about • Microprocessors • Libraries and common code • Instead Industrial vendors either • Develop everything themselves • package chipsets and libraries in their own “wrappers”
GE Fanuc VersaMaxMicroController One of the more common GE micro PLCs
GE Versamax Micro PLC Innards IO Board RELAYS CPU/Comm Board Terminals
GE Labeled, But Made By….Someone Else? Renesas microprocessor Hitachi manufactured PCB
PLC Demolition Results • If we can extrapolate from this one example: • Although PLCs looks like custom built pieces of proprietary hardware and software… • The industry reuses technology and components. Use of such third party hardware and software can open the doors of information to mal – actors
Presentation Conclusion • Learning / Research project • Gained experience with Arduino, Processing, Libraries and C language, Modbus protocol, GE PLCs, One Wire protocol, Thyristors and Solid State Relays and Ignition HMI platform. • Hopefully some of this was passed on in the presentation!
Questions? • Jeffrey.wallace.rice@gmail.com • Thanks for listening!