Period | Project | Job description |
Februari 2005 -
Today |
Plato |
Senior software
designer |
Project description |
Plato is a
software team of approximately 30 people which develop software for the
Plato system. The Plato system is an embedded
digitale harddisk recorder which can record upto 16 analog and 32
digital video cameras. It contains a 1 GHz processor,
upto 5 video DSP's (Texas Instruments: TMS320DM642) and upto 2
audio DSP's (Texas Instruments: TMS320C6205). The main task of the
video DSP's is to record
and analyse the analog video signals. They should also be able to
playback recorded video where multiple cameras can be viewed at the
same monitor. The audio DSP's have the same tasks as the video DSP's
but then for audio signals. I worked as a software designer to expand the framework I developed for Dito. The framework now offers extended communication possibilities for software components over multiple processors. The framework is also able to dynamically create software components and make connections between them. Thanks to the framework the software components do not need to know anything from other software components. This improves modularity and reusability of those software components. Plato was canceled and restarted under the name Felix with a software team of approximately 8 people. For Felix I implemented an application on top of the framework with flexibility towards multiple different hardware platforms (DiBos and Plato hardware). |
Work activities |
|
Operating system / development environment / programming languages | |
Operating system |
Windows 2000,
CE, XP |
Development environment | Texas
Instruments : Code composer studio Microsoft Visual C++ |
Programming
languages |
C, C++ (beide embedded en PC) |
Period | Project | Job description |
September 2003
– Februari '05 |
DiTO | Senior software
designer |
Project description |
DiTO is a
software team of about 9 man which develops
software for the Vicam board. The Vicam board is developed for Dibos
8.0, a digital harddisk recorder which can record upto 30 analog and 32
digital video cameras. The main task of the Vicam board is to record
and analyse the analog video signals. Per Vicam board a maximum of 6
analog cameras can be connected. The majority of the software is
developed for the DSP processor (Texas Instruments: TMS320DM642). I worked as a software designer to design, implement and test a framework which enables communication between the different software componenten. I also developed some (test)components for the framework. Besides my job I took the initiative to develop debug tools such as a DSP logfile analyser. This analyser allows the software to log upto half a million lines of logging within 30 seconds without much loss of performance or runtime behavior. These tools proved to be very usefull during the test and debug phase, which is also recognised in a certificate. |
Work activities |
|
Operating system / development environment / programming languages | |
Operating system | Windows 2000 |
Development environment | Texas Instruments : Code composer studio |
Programming languages | C, C++ (beide embedded) |
Period | Project | Job description |
June 2003 –
Augustus 2003 |
ViGeo | Software developer |
Project description |
ViGeo is a
project with the goal to make televisions cheaper.
This can be accomplished by replacing the expensive masks by cheaper
thinner ones. However this has as disadvantage that when such a mask
absorbes too much energy (photons) at a certain spot, the mask will
expand and distortions will be visible. To prevent this electronica has
been developed to reduce the amount of energy to a certain spot on the
mask.
I worked as software developer to test the functionaity of the processor (Hitachi : H8S 2148) and to develop software for the processor. The processor reads realtime information from another processor (FPGA). Meanwhile the processor calculates when the energy supply should be reduced. The results are transered back to the FPGA via the I2C protocol. |
Work activities |
|
Operating system / development environment / programming languages | |
Operating system | Windows 2000 |
Development environment | Hitachi compiler |
Programming languages | C (embedded) |
Period | Project | Job description |
September 2002 – March 2003 | VCR Simulator | Software developer |
Project description |
The VCR
simulator is an electronic board that can be
controlled via a PC. The intension of the board is to simulate video
signals with specific errors in those video signals. An example of such
an error is the dualhead error of video recorders. The advantage of the
VCR simulator is that the error is reproducable in exactly the same way
over and over again. This is very useful during testing of for example
DVD
recorders. DVD recorders should be able to record video signals
correctly, even when certain errors are present in those signals.
I worked as a software developer to further develop a scripting language which is used for defining the video signal which should be generated by the VCR simulator. One of the extensions of the scripting language is the support of parameters and constraints. The parameters can be changed by the user while the script is running. The constraints ensure that parameters will not get invalid values. They also function like rules, which means that when a parameters is changed other parameters can also change automatically. When parameters change the generated video signal will also change. This adaption of the new parameter values is done in a way that the old signal moves smoothless into the new signal without generating unwanted errors. To simplify the use of the scripting language I developed a script editor which supports and warns the user when scripting errors are present. After that I generated a number of scripts to simulate specific errors which can be present in video signals. I also wrote software for the simulator itself to be able to read the new scripts. I also wrote the software for handling the parameters and constraints, from user interface and guarding the constraints to sending the new parameter values to the simulator board and adapting to those new parameters at the right time on the simulator board itself. Ofcourse everything was delivered with enough documentation for understanding the design and maintanance. |
Work activities |
|
Operating system / development environment / programming languages | |
Operating system | Windows NT |
Development environment | MS Visual Studio, MS Visio, Borland Delphi |
Programming languages | Delphi, MS Visual C++ |
Period | Project | Job description |
September 2001 – May 2002 | Image segmentation and depth reconstruction | Software developer |
Project description |
For my
graduation project I have worked as software developer
for Philips Research in Eindhoven. I have worked at the department of
Digital Signal Processing (DSP), where I developed software for finding
depth information in video images. I paid specific attention to image
segmentation and depth reconstruction. Image segmentation tries to
divide the image into segments (groups of pixels) so that the edges of
the segments are equal to the edges of the objects in the real world.
These segments together with known camera displacements are then used
for depth reconstruction which results in a depth function for each
segment. These functions are used to calculate the depth for all pixels
in the image. I started with existing software and researched where the software could be improved. After that I designed and implemented algorithms to realise those improvements. This resulted in a new algorithm for image segmentation which reduces oversegmentation, and an improved algorithm for depth reconstruction which finds more complex functions for the segments. Philips is analysing whether these new algorithms can be patented. |
Work activities |
|
Operating system / development environment / programming languages | |
Operating system | Unix, Solaris |
Programming languages | (ansi) C |
Period | Project | Job description |
July 2000 – December 2000 | Linear motors and processor analysis | Software developer |
Project description |
I started at Anorad with 2 months work during the holidays. These two months were followed up by three months internship. Anorad is a company specialized in machines with linear motors. During the holidays I wrote several software programs in Visual Basic for controlling those linear motors via a PC with a PCI card or serial port. During my internship I analysed the potential of two processors (Texas Instruments: TMS320F240 & TMS320LF2407) to autonomically control the linear motors using feedback from the motors and a predefined program. This program should be adaptable via a PC with serial port. The software for the analysis of the processors was written in C and DSP assembler. |
Work activities |
|
Operating system / development environment / programming languages | |
Operating system | Windows, WindowsNT |
Development environment | Texas Instruments : Code composer studio |
Programming languages | Visual Basic, C, DSP Assembler |
Period | Project | Job description |
Oktober 1998 – June 1999 | Eurobot | Software developer |
September 1999 – Februari 2000 | EffiTrein | Software developer |
Project description |
Out of interest
I participated in the Eurobot project on the
Technical University in Eindhoven (TU/e). Afterwards I heard that I
could use it as a partial internship. Eurobot is an annual competition
in France, where autonome robots compete to achieve a certain goal. For
our team the goal was to defend a castle and at the same time attack
the castle of the enemy. The field was made out of green fields with
white lines, a ditch, two bridges across the ditch and two castles from
wooden cilinders. I wrote a route planner for the robots across the playfield. This software was written in Pascal and runs on a PC. On that PC several targets can be identified using a graphical user interface. The program calculates an efficient route for those targets and generated C code which could be uploaded into the robots. For orientation the robots used their known start position, measured movement of the robot and the white lines on the playfield. Besides Eurobot I also participated in the EffiTrein project. The TU/e had built a modelrailway and asked for a program to be developed in Java for controlling several trains. Given a number of requirements, like arrival and departure times, the program should calculate an efficient schedule for the trains. For both projects software was developed by a team of approximately 10 man. Eurobot consisted of a multi-disciplinair team. EffiTrein required working at CMM level 2 (Repeatability), using OMT (=UML) techniques and using the waterfall model. |
Work activities |
|
Operating system / development environment / programming languages | |
Operating system | Windows |
Development environment | Rational Rose |
Programming languages | Pascal, C, JAVA |
Period | Club | Job description |
1992 - 1997 | Computerclub AvDC | Giving courses (Pascal) |
1997 - 2000 | Computerclub PTCC | Giving courses
(Windows, Internet) Maintaining a homepage Solve problems |
Project description |
In 1992 I
started a computerclub together with a friend of
mine at our highschool where we gave courses in Pascal for fellow
students. We also gave demonstrations during public days of our
highschool with computer controlled lighteffects and LEGO robots,
ofcourse everything homemade. During the period from 1997 till 2000 I was also active member of the PTCC computerclub. I gave courses Windows and Internet for starters for elderly people. Besides that I also created and maintained the homepage of the computerclub and I solved software, hardware and Internet problems for members of the computerclub. |