Stageopdrachten Embedded Software Engineer
Opdracht: Local Dynamic Load Balancing
Studierichting: Technische Informatica Type stage: Afstudeerstage Type opdracht: Implementatie Programmeertalen: C++/Python Onze laadpalen ondersteunen ‘slim laden’ door onder anderen te kijken naar het stroomverbruik van de elektrische installatie waar ze op zijn aangesloten. Om te voorkomen dat de automaten overbelast worden, zal het laadpunt een elektrisch voertuig instrueren om (tijdelijk) minder stroom te gebruiken. Als er meer laadpalen op dezelfde installatie zijn aangesloten moeten deze ook onderling afstemmen hoeveel stroom ieder laadpunt op dat moment mag gebruiken. Dit is momenteel alleen mogelijk met tussenkomst van de cloud, waarbij onze backoffice bepaalt hoeveel stroom ieder laadpunt mag gebruiken. De opdracht is om een algoritme te ontwikkelen, valideren en implementeren wat op basis van informatie uit bijvoorbeeld een slimme meter via een mesh lokaal dynamic load balancing met meerdere laadpalen mogelijk maat.
Opdracht: Off-site logging tool
Studierichting: Technische Informatica Type stage: Afstudeerstage Type opdracht: Onderzoek/Implementatie Programmeertalen: C++/Python Als laadpalen in het veld niet goed functioneren is het niet altijd eenvoudig vast te stellen wat de error veroorzaakt. De logging die online beschikbaar is, is beperkt en soms is juist de connectiviteit het probleem. Ook kan de installatie, de auto of een specifiek event juist een error oproepen die niet altijd goed te reproduceren, op te sporen of na te bootsen is. Voor zulke situaties zouden wij graag iets aansluiten in de laadpaal om de juiste gegevens op te slaan, zodat wij die later (of op afstand) kunnen analyseren. De opdracht is het onderzoeken, vervaardigen en valideren van een PCB (of b.v. m.b.v. een Raspberry PI) om op een externe locatie het laadpunt te kunnen monitoren voor erroranalyse.
Opdracht: Automatisering functionele test eindproduct
Studierichting: Technische Informatica Type stage: Afstudeerstage Type: Onderzoek/Ontwikkeling/Implementatie Programmeertalen: C++ Aan het einde van het productie- en assemblageproces worden laadpunten nog een laatste keer functioneel getest. Een EV-simulator wordt aangesloten, een laadsessie wordt gedaan en als de gebruikersinterface goed is en de backoffice geen foutmeldingen geeft, wordt het laadpunt goedgekeurd om uitgeleverd te worden. Deze laatste test wordt momenteel volledig handmatig uitgevoerd. De opdracht is het ontwikkelen, vervaardigen en implementeren van een semi-geautomatiseerde functionele test van de laadpaal.
Opdracht: Computer vision voor geautomatiseerde integratietesten
Studierichting: Technische Informatica Type stage: Afstudeerstage Type opdracht: Implementatie Programmeertalen: C++/Python BlueCurrent heeft voor het ontwikkelen van de firmware van de laadpunten een Continuous Integration (CI) pipeline opgezet die bij elke pull-request de nieuwe software build, flasht en test op een laadpunt. Momenteel zijn er een aantal tools die gebruikt worden om de interactie tussen de laadpaal en de buitenwereld te simuleren en te meten, zoals een apparaat dat een auto simuleert of een adapter die een RFID pasje aanbiedt. Een van de componenten die wij nog uitgebreider willen testen is ons zogeheten “LedBoard”. Dit deel van het laadpunt toont door middel van RGB LEDs de status van de laadpaal aan. De opdracht is om een computer vision programma te ontwikkelen dat de verschillende LED animaties (en kleuren) kan detecteren en rapporteren aan het test automation framework.
Stageopdrachten Embedded Software Engineer
Opdracht: 4G-communicatie i.c.m. ESP32
Studierichting: Technische Informatica Type stage: Afstudeerstage Type opdracht: Onderzoek/Implementatie Programmeertalen: C++ Laadpunten van Blue Current zijn uitgerust met een 4G-module voor als de laadpaal niet direct met ethernet aangesloten kan worden en een wifi verbinding niet mogelijk is. De 4G module die momenteel gebruikt wordt is weliswaar simpel qua implementatie, maar ook erg duur. De opdracht is het implementeren van een alternatieve (goedkope) 4G chip in combinatie met ons framework op de ESP32 om de huidige 4G-module te vervangen.
Opdracht: Self-authentication of EV
Studierichting: Technische Informatica Type stage: Afstudeerstage Type opdracht: Onderzoek/Implementatie Programmeertalen: C++ Om je elektrische auto op te laden heb je een speciale laadpas nodig. Deze laadpas is gekoppeld aan je betaalgegevens en moet je voor een RFID lezer houden om een laadsessie te starten. Een nieuw communicatieprotocol tussen de auto en de laadpaal, de ISO 15118, kan ons in staat stellen om de authenticatie automatisch te doen zodra de auto aangesloten wordt, waarbij de betaalgegevens zijn gekoppeld aan de auto in plaats van aan een laadpas. Een grote stap vooruit in het gemak voor de gebruiker. De opdracht is het ontwikkelen en valideren van software die deze communicatie met de auto mogelijk maakt.
Opdracht: Unit testing for embedded software
Studierichting: Technische Informatica Type stage: Afstudeerstage Type opdracht: Onderzoek/Implementatie Programmeertalen: C++/Python Moderne software wordt vaak ontwikkeld met behulp van automatiseringen die de functionaliteiten van de software op verschillende niveaus test, zoals unit tests, integration tests, system tests etc. Op bare-metal embedded platforms is het uitvoeren van unit tests vaak niet haalbaar doordat er een tekort aan resources is op de target. Een mogelijke oplossing hiervoor is om door middel van mocks, fakes en stubs de hardware afhankelijkheid weg te halen. Hierdoor wordt het mogelijk om de software die op een embedded target draait lokaal uit te voeren en in een unit-test systeem te zetten. De opdracht is om een omgeving op te zetten die het mogelijk maakt om de hardware afhankelijkheden te vervangen door fakes, mocks of stubs en het unit testen mogelijk maakt binnen de CI pipelines van BlueCurrent.
Stageopdrachten Front-end & Back-end Developer
Opdracht: Laadprofielen en schedules
Studierichting: Software Development Type stage: Derdejaars stage of afstudeerstage Team: Front-end/Backend
Gebruikers willen graag kunnen aangeven dat ze op bepaalde momenten van de dag wel of juist niet willen laden. Hiervoor moeten schedules ingericht worden om uitgesteld laden te implementeren.
Kennis:
•Bij voorkeur kennis van Oracle Apex, React, PL/SQL en SQL
Opdracht: Laden op zon
Studierichting: Software Development Type stage: Derdejaars stage of afstudeerstage Team: Front-end/Backend
Klanten vragen om te kunnen laden op zonne-energie. Hiervoor moet onderzoek gedaan worden wat ze precies verwachten en moet een oplossing ontwikkeld worden.
Kennis:
•CSS/HTML/Javascript
•Bij voorkeur kennis van React en SQL
Opdracht: Rebuild CPO platform
Studierichting: Software Development Type stage: Derdejaars stage of afstudeerstage Team: Front-end/Backend
Onze backoffice GUI is gebouwd in Oracle Apex. Deze functionaliteit willen we ombouwen naar React. Dit willen we, gefaseerd, per functioneel onderdeel ombouwen.
Kennis:
•CSS/HTML/Javascript
•Bij voorkeur kennis van React en SQL
Opdracht: Grafische presentaties van laadgedrag
Studierichting: Software Development Type stage: Derdejaars stage of afstudeerstage Team: Front-end/Backend
Gebruikers willen graag inzicht krijgen in hun laadgedrag en het verbruik van stroom in hun huis of bedrijfsgebouw. Op dit moment hebben we al deze data beschikbaar, maar wordt het niet gebruiksvriendelijk getoond. Hiervoor willen we graag een aantal mogelijkheden bieden aan gebruikers via onze backoffice applicatie en via onze gebruikers app.
Kennis:
•CSS/HTML/Javascript
•Bij voorkeur kennis van SQL, React en React Native
Stageopdrachten Front-end & Back-end Developer
Opdracht: Laadpaal kleef oplossing
Studierichting: Software Development Type stage: Derdejaars stage of afstudeerstage Team: Front-end
We hebben een laadpaalkleef oplossing waarbij mensen zichzelf kunnen aanmelden en op een wachtlijst kunnen zetten. Deze oplossing moet opnieuw gebouwd worden in React JS>
Opdracht: Opzetten (geautomatiseerd) testen backend
Studierichting: Software Development Type stage: Derdejaars stage of afstudeerstage Team: Backend
Zowel onze laadpunt software als onze backoffice software moet getest worden. Hiervoor willen we zoveel mogelijk gebruik maken van geautomatiseerde testen.
Kennis:
•Algemene IT kennis
•Bij voorkeur kennis van Oracle
•Affiniteit met software testen
Opdracht: Front-end geautomatiseerd testen
Studierichting: Software Development Type stage: Derdejaars stage of afstudeerstage Team: Front-end
We willen onze frontends en apps automatisch kunnen regressie testen.
Kennis:
•Algemene IT kennis
•Bij voorkeur kennis van React
•Affiniteit met software testen
Opdracht: Dashboards voor functionele en technische monitoring
Studierichting: Software Development Type stage: Derdejaars stage of afstudeerstage Team: Backend
We hebben een aantal overzichten/rapportages ten aanzien van verkeerde instellingen. Deze willen we uitbreiden tot een flexibel in te stellen onderdeel waarbij onze medewerkers zelf dashboard kunnen definiëren. Daarnaast willen we hiermee ook advies kunnen geven aan klanten over hun laadpunten (of er bijvoorbeeld laadpunten bijgeplaatst moeten worden.
Kennis:
•Bij voorkeur kennis van Oracle Apex, SQL en data science