LC-Products

Maatwerk dashboard voor inhoudsmeetsysteem

De applicatie

LC-Products is een bedrijf dat zich gespecialiseerd heeft in inhouds-, meet- en regelsystemen. Daarnaast bieden ze veel oplossingen voor diverse markten.

LC-Products had een oud systeem waarmee o.a. de inhoud van vloeistoftanks uitgelezen kon worden. Dit systeem was verouderd en niet onderhoudbaar. De opdracht was dan ook om een nieuwe applicatie te ontwikkelen om het oude systeem te vervangen en nieuwe functionaliteiten te bieden.

LCSWeb1 Dashboard

Het oude systeem wat vervangen moet worden

Het proces

1. De situatie bepalen
Door te kijken naar het oude systeem, de hardware die uitgelezen moet worden en de wensen van zowel klanten als beheerders werd het duidelijk waar het systeem tot in staat moet zijn. Hierbij werd er vooral gekeken naar wat de klanten en beheerders probeerde te bereiken en wat de “problemen” waren die ze probeerde op te lossen. Dit heeft er toe geleid dat er verschillende stappen in het proces van deze gebruikers geautomatiseerd zijn.

2. Het kiezen van de techniek
Wat erg belangrijk was voor de nieuwe applicatie was dat het uitbreidbaar en onderhoudbaar zou worden. Dit was uiteindelijk wat ervoor gezorgd heeft dat het eerste systeem vervangen moet worden. Daarnaast was het erg belangrijk dat het goed online zou werken en dat de applicatie flexibel was voor uitbreiding in de toekomst. Om deze redenen, gecombineerd met eerdere goede ervaringen, is er voor het PHP framework Laravel gekozen met een MySQL database.

3. Een database opstellen
Toen het duidelijk was met welke technieken de applicatie gebouwd zou gaan worden, moest er een databasestructuur bepaald worden. Bij deze database was het wederom belangrijk om rekening te houden met de toekomst zodat er ruimte was voor nieuwe functionaliteiten. Daarnaast zullen er grote hoeveelheden meetdata van sensoren verzameld worden wat de applicatie niet mag vertragen. Om inzichtelijk te krijgen wat voor data er van sensoren en systemen opgeslagen moest worden, is er voornamelijk naar de oude applicatie gekeken.

4. De basis van de applicatie
Laravel werkt met een MVC model (Model, View, Controller) en de eerste stappen in de daadwerkelijke ontwikkeling van de applicatie waren dan ook een basis hierin leggen. De verschillende tabellen in de database werden uitgewerkt in modellen, de eerste views werden gemaakt voor basis functionaliteiten zoals inloggen en gebruikersbeheer en de eerste controllers werden gemaakt om deze basis functionaliteiten te realiseren.

5. Eerste grote versie
De eerste grote versie van LCSWeb3 draaide volledig om de ULCS, een bepaald type sensor. Op het moment dat deze eerste versie af was, werden de eerste klanten tot LCSWeb3 geïntroduceerd om zo ook feedback van hun te krijgen.

6. Tweede grote versie
Met de tweede grote versie van LCSWeb3 werd er ondersteuning voor de KD04, een ander type meetsysteem toegevoegd. Dit systeem bracht een hoop technische uitdagingen met zich mee omdat het zo verschillende van het eerdere systeem, de ULCS, is.

7. Derde grote versie
Recentelijk is er weer een nieuwe grote update van LCSWeb3 uitgebracht. Met deze versie worden er een aantal basiselementen van de applicatie veranderd om zo de flexibiliteit van het systeem verder te vergroten. Zo is er een nieuw relatiesysteem geïntroduceerd wat het mogelijk maakt dat gebruikers systemen van verschillende bedrijven kunnen inzien, is er meer focus gelegd op en mobiele versie en is er vooral ook erg veel op de achtergrond geoptimaliseerd.

Welke technieken zijn er gebruikt?

php logo

PHP

De programmeertaal

laravel logo

Laravel

Het framework

mysql logo

MySQL

De database

jquery logo

JavaScript / jQuery

Voor een interactieve front-end

bootstrap logo

CSS / Bootstrap

Voor de vormgeving

Voorbeelden van functionaliteiten

De applicatie bevat erg veel functionaliteiten om zowel de klanten als de beheerders te helpen. Hier zijn een aantal voorbeelden van functionaliteiten in LCSWeb3 kort toegelicht:

Inschatten wanneer een vloeistoftank leeg is
Door te kijken naar het gemiddelde verbruik van een vloeistoftank in het verleden kan er een inschatting gemaakt worden hoeveel dagen het nog zal duren voordat de betreffende vloeistoftank leeg is.

– Exports op maat, per gebruiker
LCSWeb3 kent verschillende klanten die planningssoftware gebruiken om te plannen wanneer vloeistoftanks gevuld moeten worden. Verschillende klanten gebruiken verschillende soorten planningsoftware die ieder op een eigen manier een uitreksel van tankstanden vereisen. Daarom is het mogelijk gemaakt in LCSWeb3 om per account aan te geven of je de tankstanden in CSV of Excel wil zien en is het mogelijk om aan te geven welke velden en in welke volgorde hierin moeten komen te staan.

– Een gedetailleerde grafiek
Om het verloop van een vloeistoftank goed inzichtelijk te maken is het mogelijk om een periode te selecteren en vervolgens een grafiek met de vloeistofstanden in te kunnen zien. Hierbij kan er dan per meetpunt precies gekeken worden wat er op dat moment gemeten is.

– Rechten en rollen
Naast dat er op LCSWeb3 4 verschillende soorten accounts zijn, is er ook een heel relatiesysteem waarmee vrijwel elke combinatie tussen gebruikers en meetsystemen mogelijk is. Dit zorgt ervoor dat accounts flexibel ingericht kunnen worden en dat er altijd de juiste rechten kunnen worden verleend.

– Notificaties en detectie
Het is mogelijk om notificaties (op de mail) te ontvangen wanneer een vloeistoftank onder een bepaald percentage inhoud komt. Hier is een algemene instelling voor maar er kunnen ook uitzonderingen per vloeistoftank ingesteld worden. Daarnaast monitoort de applicatie op de achtergrond de binnengekomen data en kan het automatisch detecteren wanneer een sensor defect is, problemen met de batterij heeft, verkeerd meet en nog veel meer.

Bekijk de demovideo om een indruk te krijgen van de applicatie

Wil je meer weten over dit project? Of heb je een soortgelijk of ander development project waar je ons mee wil uitdagen?