Discover how we help businesses grow by solving complex challenges in programming, machine learning, fast data acquisition, and automation -explore our case study!
Automated utility monitoring in a pharmaceutical facility reduced energy costs by 15% and improved operational efficiency through real-time data, anomaly detection, and smart system integration.
Industry: Pharmaceutical
Year: 2020
Duration: about one year
Category: Industrial Automation / Cost Optimization
Scope of Work: Concept, Integration, System Implementation
Technology: SCADA, EMS, Smart Meters, IoT Sensors, Real-time Data Analysis
Automated utility monitoring is a powerful tool for cost reduction, increased efficiency, and regulatory compliance. Implementing smart meters, a SCADA system, and integrated energy management systems (EMS) in a production facility enables rapid identification of losses, consumption optimization, and reduced downtime risks.
Smart meters and sensors monitor consumption in real time, while the SCADA system automatically analyzes data, generates reports, and sends alerts in case of anomalies. Integration with the EMS system enables automatic adjustments to equipment operation, eliminating losses and improving production stability.
Don’t let inefficient utility consumption drive unnecessary costs. Contact us to learn how modern solutions can benefit your company!
Got a similar concern? Set up a free consultation.
Book a meetingHow an unconventional approach solved an 8-year-old PyTango bug in just 3 days.
Client: ESRF
Industry: Big Science
Year: 2024
Duration: 3 days
Category: Debugging / Scientific Software
Scope of Work: Code Analysis, Bug Fix
Technology: Python, C++, Boost::Python, GDB, PyTango
PyTango is a Python library that enables communication with the Tango Controls system, a tool used to develop distributed control systems in scientific laboratories such as ESRF, SKAO, MAX IV, and ELETTRA. A bug was discovered in PyTango that remained unresolved for eight years, with repeated attempts to fix it ending in failure. Mateusz Celary from S2Innovation managed to resolve it in just three days—thanks to in-depth code analysis and an unconventional approach: dynamically overriding a function pointer in Boost::Python. This is a story of determination, code analysis, and overcoming organizational constraints.
The main challenge was fixing a bug in PyTango that had remained unresolved for years despite numerous attempts to eliminate it. The issue was related to memory management at the interface between C++ and Python, making it difficult to control object lifecycles.
The PyTango developers had no effective way to solve the problem, and previous approaches had failed. An additional challenge was the time pressure—there were only three days to analyze the issue and determine whether a fix was even possible.
We focused on in-depth code analysis and intensive debugging using GDB. The key was to fully understand the memory management mechanism between the C++ and Python layers, which allowed us to pinpoint the root cause of the bug.
When standard methods failed, we made a bold but effective decision—we applied dynamic function pointer overriding in Boost::Python. This allowed us to control class destructors from Python, enabling more efficient object lifecycle management and eliminating memory-related bugs.
Technologies used: Python, C++, Boost::Python, GDB. However, the key factors in solving the issue were analytical thinking and a creative approach, which enabled precise diagnostics and an effective fix.
Our solution restored system stability and enabled proper memory management between Python and C++. We fixed a critical command that other programs depended on, and in the process, deepened our understanding of PyTango’s inner workings.
Additionally, the implementation of automated tests further increased system reliability and established a solid foundation for future improvements.
The PyTango story shows that even long-standing unresolved bugs can be eliminated through creativity and flexibility in tackling technical challenges. Innovative memory management not only solved the problem but also opened up new opportunities for system optimization.
Do you have an unresolved issue in your code? Our unconventional approach could help you too. Contact us!
Got a similar concern? Set up a free consultation.
Book a meetingAutomation of the cryogenic system at ESS boosted precision, scalability, and operational efficiency.
Client: ESS
Industry: Big Science
Year: 2024
Duration: 8 months
Category: Adaptable Custom Software
Scope of Work: New Functionality, Automation
Technology: PLC, SCL, Excel, Python, EPICS
The European Spallation Source (ESS) is a multidisciplinary research facility based on the world’s most powerful neutron source. The center employs cryogenic cooling systems for cryomodule testing. As operations expanded, the need for improved supervision and the elimination of manual workloads became evident. To address this, the Automated Control Sequence (ACS) was implemented, automating processes and enhancing precision and efficiency.
By automating repetitive processes, ACS significantly streamlined the handling of cryogenic cooling operations and improved supervision at every stage. Operators can now focus more on data analysis and system optimization rather than routine equipment control. Automation increased operational precision, ensuring stable cooling parameters and eliminating inconsistencies.
Thanks to an intuitive graphical user interface (GUI), users have complete control over the process, and real-time data visualization facilitates quick decision-making. The system is designed for future expansion—the next planned update includes replacing Excel as the database to enhance efficiency.
Previously, each device required a dedicated operator. With 27 cryomodules being cooled simultaneously, this created significant organizational and technical challenges. Manual operation of so many modules would have required multiple operators or placed excessive strain on a single person, leading to delays and inconsistencies.
The lack of centralized coordination made synchronization difficult, as operators had to repeatedly perform the same tasks, wasting time on routine operations. With the increasing number of devices, the risk of human error grew, and manual control did not allow for precise parameter adjustments. Automating the cooling process was essential to improve operational consistency and reduce excessive personnel involvement.
The Automated Control Sequence (ACS) was developed to fully automate cryomodule control, eliminating the need for manual operation. Each module was equipped with a dedicated PLC controller, while a master unit coordinates their operation, ensuring process synchronization. Integration with EPICS allows real-time monitoring of parameters and instant responses to changing conditions.
To execute the project:
Initially, Excel was used as the database for storing operational sequences. However, due to the growing project scale, it is planned to be replaced with a more efficient data management system for better future modifications and ACS optimization.
The implementation of ACS at ESS optimized cryogenic cooling control, improving repeatability and reliability. Automation reduced routine tasks performed by operators, minimizing errors and enhancing system consistency. Future improvements include integrating a more efficient database, which will further streamline information management and system development.
Thinking about process automation? Start by analyzing your current procedures and choose a flexible control system that grows with your business. Implement solutions that speed up operations and boost efficiency. Contact us to learn how we can help automate your process!
Got a similar concern? Set up a free consultation.
Book a meeting