Using CP in Automatic Test Generation for ABB Robotics’ Paint Control System
Designing industrial robot systems for welding, painting, and assembly, is challenging because they are required to perform with high precision, speed, and endurance. ABB Robotics has specialized in building highly reliable and safe robotized paint systems based on an integrated process control system. However, current validation practices are primarily limited to manually designed test scenarios. A tricky part of this validation concerns testing the timing aspects of the control system, which is particularly challenging for paint robots that need to coordinate paint activation with the robot motion control.
To overcome these challenges, we have developed and deployed a costeffective, automated test generation technique based on Constraint Programming, aimed at validating the timing behavior of the process control system. We designed a constraint optimization model in SICStus Prolog, using arithmetic and logic constraints including use of global constraints. This model has been integrated into a fully automated continuous integration environment, allowing the model to be solved on demand prior to test execution, which allows us to obtain the most optimal and diverse set of test scenarios for the present system configuration.
After three months of daily operational use of the constraint model in our testing process, we have collected data on its performance and bug finding capabilities. We report on these aspects, along with our experiences and the improvements gained by the new testing process.
KeywordsConstraint Programming Test Scenario Global Constraint Process Control System Test Execution
Unable to display preview. Download preview PDF.
- 1.Fowler, M., Foemmel, M.: Continuous integration (2006) (accessed August 13, 2013)Google Scholar
- 2.Mossige, M., Gotlieb, A., Meling, H.: Poster: Test generation for robotized paint systems using constraint programming in a continuous integration environment. In: 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation (ICST), pp. 489–490 (2013)Google Scholar
- 3.Carlsson, M., Ottosson, G., Carlson, B.: An open-ended finite domain constraint solver. In: Glaser, H., Hartel, P., Kuchen, H. (eds.) PLILP 1997. LNCS, vol. 1292, pp. 191–206. Springer, Heidelberg (1997)Google Scholar
- 4.Di Alesio, S., Nejati, S., Briand, L., Gotlieb, A.: Stress testing of task deadlines: A constraint programming approach. In: 2013 IEEE 24th International Symposium on Software Reliability Engineering (ISSRE), pp. 158–167. IEEE (2013)Google Scholar
- 5.Balck, K., Grinchtein, O., Pearson, J.: Model-based protocol log generation for testing a telecommunication test harness using CLP. In: Design, Automation and Test in Europe Conference and Exhibition (DATE), pp. 1–4 (2014)Google Scholar
- 6.Stolberg, S.: Enabling agile testing through continuous integration. In: Agile Conference, AGILE 2009, pp. 369–374. IEEE (2009)Google Scholar
- 7.Marriott, K., Stuckey, P.J.: Programming with constraints: an introduction. MIT Press (1998)Google Scholar
- 8.Utting, M., Legeard, B.: Practical Model-Based Testing: A Tools Approach. Morgan Kaufmann Publishers Inc., San Francisco (2007)Google Scholar
- 9.Régin, J.C.: The global minimum distance constraint. Technical report, Technical report, ILOG (1997)Google Scholar
- 10.Mossige, M.: Prolog Model of ABB’s Paint Control System for test case generation (2014), http://www.ux.uis.no/~mortenm/ips/trigdev_bt.pl
- 13.IBM, ILOG Labs, I.: IBM CPLEX: High-performance software for mathematical programming and optimization (2006), http://www.ilog.com/products/cplex/
- 14.Rossi, F., Beek, P.V., Walsh, T.: Handbook of Constraint Programming (Foundations of Artificial Intelligence). Elsevier Science Inc., New York (2006)Google Scholar
- 15.de la Banda, M.G., Stuckey, P.J., Van Hentenryck, P., Wallace, M.: The future of optimization technology. Constraints, 1–13 (2013)Google Scholar