An Open and General Numerical Control and Machine Vision Based Architecture for Payment Terminal Acceptance Test Automation