3-5 July 2006
CERN, Geneva
Europe/Zurich timezone

Factory monitoring with Pylons, XML-RPC and SVG

3 Jul 2006, 12:10
30m
40-SS-D01 (CERN, Geneva)

40-SS-D01

CERN, Geneva

Python in Science Python in Science

Speaker

Dr Rob Collins (Europython 2006 Conference)

Description

I write Python applications for a company specialising in industrial factory monitoring and scheduling. Most recently we have developed a web application for remote monitoring, sending text message alarms when machine hoppers run low. We're using the Pylons web framework, Myghty templating, XML-RPC and SimPy simulation. The dynamic graphical display of the factory is written in SVG, for Firefox (v1.5) web browser. We will look at interesting issues such as * the choice of framework and templating system, * the importance of decoupling threads using a log file and XML-RPC, * historical correction of data, * and why we needed simulation.

Summary

Summary

We provide a web-based factory monitoring system for the plastics industry. Machine
data is captured by an embedded web server in a box connected to up to four machines
in a factory. A Pylons web server polls the box for new data every 15 seconds. A
factory model is updated with the new data, which is displayed in dynamic, graphical
web pages on demand.

Interesting issues

  • Choice of Pylons vs. other web frameworks.

  • Choice of Myghty vs. other templating systems.

  • Use of SVG objects for the factory mimic (graphical picture), showing the status of
    each machine, with dynamically created alarms.

  • Decoupling input, analysis and display by the use of a time-adjusted log file.

  • Use of XML-RPC for decoupling threads, so that one thread writes data for another,
    using the Pylons framework xmlrpc server.

  • Use of XML-RPC to suck data out of standalone PCs running Visual Basic.

  • Historical correction of data by entering missing log lines in the past, followed
    by reprocessing the log file to give a new current status.

  • Use of wireless iPaq PDA for entering scrap and downtime reasons.

  • Use of threading: stopping/starting/restarting.

  • The need for simulation, and the simulation model.

Primary author

Dr Rob Collins (Europython 2006 Conference)

Presentation Materials

There are no materials yet.
Your browser is out of date!

Update your browser to view this website correctly. Update my browser now

×