Startpagina

Van concept tot prototype — autonome productontwikkeling

Volledige ontwikkeling van elektronische apparaten: schema, layout, firmware, FPGA-ontwerp, simulatie en verificatie. Specificatie, code, test, levering — alles uit één hand.

Embedded apparaten ontstaan zelden uit één discipline. Een nieuw idee vraagt om een schema, het schema om een layout, de layout om firmware of FPGA-ontwerp, en dat alles vraagt aan het einde om verificatie en documentatie. Die wisselwerking over meerdere leveranciers verdelen, betekent interfaces inkopen — en interfaces zijn de meest voorkomende foutbron.

Autonome end-to-end ontwikkeling betekent: één aanspreekpartner, end-to-end verantwoordelijkheid, één samenhangende documentatie. U bespaart coördinatie, ik kan beslissen zonder een leveranciersketen te raadplegen.

Hoe een typisch end-to-end project verloopt

Hoewel elk project anders is, volgt het verloop een herkenbaar patroon:

  1. De taak begrijpen. Het kennismakingsgesprek verheldert wat het apparaat moet doen, welke randvoorwaarden gelden (volume, kosten, afmetingen, verbruik, normatieve eisen) en welke interfaces er met bestaande systemen zijn.
  2. Concept en specificatie. Op basis van de taak ontstaat een technisch concept: welk microcontroller- of FPGA-platform past, welke bussen, welke analoge en digitale signalen, welke softwarearchitectuur. Het resultaat is een specificatiedocument als basis voor al het verdere.
  3. Schema-ontwerp. Opzetten van het schema met de gekozen componenten, dimensionering van de kritieke onderdelen, simulatie op de doorslaggevende punten.
  4. Print-layout. Multilayer-PCB-ontwerp met aandacht voor hogesnelheidssignalen, EMC, warmteafvoer en maakbaarheid. Selectie van een printenfabrikant en begeleiding van de fabricage.
  5. Firmware of FPGA-ontwerp. Implementatie van de besturings- of signaalverwerkingslogica in C/C++ voor microcontrollers, in VHDL/SystemVerilog voor FPGA — of in combinatie. Bare-metal op krappe microcontrollers, FreeRTOS of equivalent RTOS op grotere systemen.
  6. Verificatie en test. Schakeling-simulatie op kritieke punten, testbenches voor FPGA-ontwerpen, hardwaretests op het prototype, indien nodig HIL-bank voor de software.
  7. Levering en documentatie. Volledige broncode, schema, layoutgegevens, stuklijst, documentatie van de aanpak en ontwerpbeslissingen. Op verzoek kennisoverdracht aan het klantteam.

Indien gewenst neem ik ook de coördinatie met een serieproducent op me die de gewenste kwaliteit levert — zoals in het Audi-project (zie referenties), waar een handmatig bedraad prototype een machinaal vervaardigde industriële print werd.

Drie disciplines — uit één hand

De volgende drie disciplines komen samen in een end-to-end project:

Hardware

Hardware-ontwikkeling

Ontwerp en realisatie van de elektronische hardware — van het schema via de print-layout tot de coördinatie van de serieproductie. Specialiteiten: microcontroller-systemen, FPGA-printen en gemengd analoog-digitale schakelingen.

  • Microcontroller-systemen (ARM Cortex-M, ESP32, Atmel/Microchip)
  • FPGA-ontwerp en -integratie (Xilinx Artix-7, Zynq)
  • Analoge en digitale schakelingen
  • PCB-ontwerp (Pulsonix, multilayer, hogesnelheid, EMC)
  • Schakelingsdimensionering en componentenkeuze
  • Begeleiding van PCB-fabricage en coördinatie met industriële partners
  • Inbedrijfstelling en hardware bring-up
Software

Software-ontwikkeling

Implementatie van de embedded software op de ontwikkelde hardware — van hardware-nabije bare-metal-programmering tot multi-core realtime besturingssystemen. Talen, platforms en protocollen worden naar projecteisen gekozen, niet naar voorkeur.

  • Embedded software (C, C++, assembler)
  • FPGA-programmering (VHDL, Verilog, SystemVerilog)
  • Realtime systemen (FreeRTOS, bare-metal, multi-core)
  • Communicatieprotocollen (CAN, CAN FD, Ethernet, EtherCAT, I²C, SPI, MOST)
  • Driverontwikkeling voor hardware-nabije interfaces
  • Bootloader, watchdog, firmware-updatemechanismen
  • Algoritmen voor signaalverwerking en regeling
Verificatie

Simulatie en verificatie

Systematische validatie van de ontwikkelde oplossing — op schakelingsniveau, FPGA-niveau, systeemniveau. Verificatie is geen nageschoven stap, maar integraal onderdeel van de ontwikkeling.

  • Schakeling-simulatie in tijd- en frequentiedomein
  • Monte Carlo-analyse en worst-case-onderzoeken
  • FPGA-verificatie met SystemVerilog-testbenches
  • HDL-simulatie (Vivado, Icarus Verilog, Verilator)
  • Bode-diagram, Nyquist-analyse, stabiliteitsonderzoeken
  • Hardware-in-the-loop tests voor geïntegreerde systemen

Wat end-to-end ontwikkeling onderscheidt van «alleen coderen»

Wanneer een klant tegenwoordig «een embedded ontwikkelaar» zoekt, denkt hij meestal aan iemand die een deeltaak uitvoert: een C-module, een FPGA-component, een driver. Daar zijn veel aanbieders voor.

End-to-end ontwikkeling is iets anders. Zij vergt iemand die kan beslissen — over architectuur, componentenkeuze, interfaces, afwegingen tussen kosten en functionaliteit. Deze beslissingscompetentie staat niet in elk cv, en is niet te vervangen door extra specialisten erbij te zetten.

Ik neem end-to-end ontwikkeling op me daar waar de klant geen eigen embedded-afdeling wil onderhouden — en waar tegelijk de daaruit voortvloeiende inspanning en verantwoordelijkheid economisch op één persoon kan rusten.

Vormen van samenwerking

End-to-end projecten worden in de regel afgewikkeld onder vaste-prijscontract met harde leverbelofte. De inspanning wordt vóór projectstart ingeschat, de prijs wordt gegarandeerd. Voor verkennend werk zonder duidelijk eindpunt is alternatief een urencontingent mogelijk. Details op de pagina Opdrachtverlening.

Kleurenschema

Taal