Time flies… and things get done

(by Gonçalo Guerreiro)

I started my internship at ABB in the beginning of March and it has been an incredible experience so far. From the first steps in the office, to the opportunities of wandering around Krakow, a lot has happened and, as my project moves forward, I realised I haven’t shared much about it yet.


Since I joined ABB, I have been working to develop a proof-of-concept for a “new” type of controller. This means I am building a simple version of a controller to test the feasibility of a new approach. If successful, the technology can then be improved, scaled, and may be applied in future products.

What can it be used for?

Controllers are very common in today’s technology: industrial processes, automotive applications, aerospace industry, among others. They are capable of monitoring a system’s operation and control its future behaviour. The controller I am working with could end up being used in almost any application but, for now, the plan is to test it in a water-pumping system and in a servomotor to assess its efficacy.


Control has been around for quite some time and it’s widely used. The novelty in my project comes from the usage of parallel processing in a predictive controller. Predictive controllers calculate the input for a certain system by comparing its actual state to a programmed desirable behaviour in order to match them. Predictive control problems can easily become very complex and difficult to handle. However, it is very likely they could be solved more efficiently with the use of multiple processors rather than a single processing unit (the usual approach). This possibility has motivated my research and I have been exploring it for the past two months.

How am I doing it?

In order to develop the project I have been using as a main tool, one FPGA (Field-Programmable Gate Array) in which I implemented a multiprocessor architecture. I am programming the system using the C language. While I was not a stranger to some of the tools / concepts I am using, the amount of learning  has been incredible.

The status

I am happy with the developments so far. I already have a basic working version of the controller and the next steps will be its improvement and testing in a real situation.

That was the sum-up of my project so far. I hope it has some appeal for the engineers out there and that I didn’t geekify it too much for the others!

Some other updates: I have just received a video camera from ABB to do some video diaries from my experience during the internship and next weekend I will be travelling to Zurich for a week of workshops at the global headquarters together with global trainees from all over the world. I will keep you in the loop!