Autogenererad källkod - alltid den senaste versionen
Vilken version av källkod har du?

När programmeraren bara har en mjukvaruversion av maskinen att jobba med blir det mycket enklare att felsöka, uppdatera och vidareutveckla. Olika maskinuppsättningar realiseras enkelt med hjälp av utvecklingsmiljöns integrerade scriptfunktioner
Genom att utnyttja den senaste programmeringstekniken kan maskinbyggare och utvecklare spara mycket tid och pengar. Allt handlar om att arbeta på ett smart och effektivt sätt. Tiden då man var tvungen att hålla reda på olika mjukvaruversioner, hos olika kunder, i olika delar av världen. Den är helt förbi!
Modern programmeringsteknik sparar tid Arbeta smart och effektivt Generera källkod med hjälp av scripfunktioner
Maskinens källkod implementeras i sin helhet med optioner och tillägg
Att utnyttja tekniken med centralt förvaltad källkod vinner både maskinbyggare och slutkund. Själva idéen är att en maskinserie implementeras fullt ut med de optioner som man kan erbjuda vid skrivande stund. Därefter inleds marknadsföringen av den nya, revolutionerande maskinen, mot både gamla och nya kunder.
Centralt hanterad källkod kortar ner programmerarens arbete Uppdateringar och buggfixar löses centralt
Autogenerera "ny" källkod för varje beställning - utan något extra arbete
När maskinserien lanseras på marknaden har man utöver själva källkoden även förberett ett script. Detta script har till uppgift att autogenerera källkod till den nyss beställda maskinen. Autogenereringen hämtar upp källkod som man hanterar centralt.
Script läser in den centralt hanterade källkoden och genererar mjukvaran Säker på att källkoden alltid är den senaste versionen
Ex: Praktiskt exempel för en trä- och lackeringsmaskin
Ponera att en maskinbyggare bygger maskiner för behandling av olika träprodukter, så gör vi ett exempel på hur man håller nere versionerna av källkod. Maskinen består alltid av en huvudenhet, se Huvud "CPU", och ett par grundfunktioner likt frammatning, kapning och bortforsling. Dessa är alltid själva grunden i maskinen. Därefter har kunden möjlighet att välja till ett par funktioner, se lackering, torkning och putsning.
Håll nere antalet mjukvaruversioner Vid tillverkning - läs in konfigurationen och starta scriptfunktionen
Forts: Så autogenererar vi källkoden för trä- och lackeringsmaskinen

Ett script utgår ifrån en grundmaskin och integrerar därefter de optioner och varianter som kunden önskar. Scriptet implementeras med inparametrar som ligger till grund för hur mjukvaran kommer att se ut.
Scriptet som låter oss autogenerera vår källkod till vår kunds beställda maskin har ett par inparametrar. Dessa definerar vilka valbara maskinuppsättningar kunden önskar beställa. Därefter sätts detta samman och resulterar i en komplett källkod som vi laddar in i styrningen och allt är klart!
Maskinens optioner blir inparametrar i vårt script Färdiga källkoden laddas in i styrningen
Nu har man bara en version av källkod att hålla sig till - mycket enkelt
En av fördelarna med detta sätt att bygga och implementera maskiner är moduläriteten och den enkla hanteringen av källkoden. Man har bara en version, den senaste. Behöver en kund uppdatera sin mjukvara till den senaste uppdateringen så matar man bara in hans maskinuppsättning i scriptet och genast har man en aktuell mjukvaruversion.
Moduläritet och enkel hantering är stora fördelar Gamla maskiner uppdateras genom att kalla upp scriptet med maskinens optioner som inparametrar Ny genererad källkod är alltid den senaste versionen
Ev. buggar och vidareutveckling behandlas effektivt
Skulle man råka ut för ev. buggar och måste uppdatera mjukvaran så går utvecklarna in i sin källkod korrigerar felet. När alla kunderna därefter ska uppdatera sina maskiner så låter man återigen scriptet göra sin sak, autogenerera en uppdatering som man därefter mailar till sin kund, kanske på andra sidan jorden.
Buggar tas om hand centralt OOP möjliggör att ändringen görs på endast ett ställe Hellre använda script för en uppdaterad mjukvara än att hämta upp alla maskiners källkod och göra ändringarna en för varje maskin
Autogenerering av källkod ingår i SIGMATEKs licensfria utvecklingsmiljö LASAL
För att implementera SIGMATEKs kompakta hårdvara har man utvecklat LASAL. Det är en utvecklingsmiljö som fokuserar på alla inblandade i en maskinkonstruktion. Tack vare den grafiska presentationen av källkod kan alla från konstruktörer, projektledare, utvecklare och servicepersonal se hur källkoden arbetar och vilka hårdvarukomponenter som representeras av vilka mjukvarukomponenter.
Licensfri utvecklingsmiljö utan några uppdateringsavgifter Har ni råd att inte undersöka vad LASAL kan göra för er?
Objektorienterad programmering får man på köpet
Sedan år 2000 har SIGMATEK erbjudit maskinbyggare objektorienterad programmering. Denna teknik underlättar programmeringen och utvecklingen av källkod samt underhåll av denna kod. Klasser, objekt, ärvning, privata och globala metoder är termer som programmerare av högnivåspråk är mycket väl bekanta med.
Objektorienterad programmering skyddar källkoden Ärvning av källkod kortar ner tiden för utveckling
Maskinbyggare får stora fördelar med objektorienterad programmering

Ett smart sätt att realisera sin maskin på är att använda objektorienterad programmering. På så sätt återanvänder man sin programkod och kan enkelt bygga komplexa maskiner med enkla moduler.
Objektorienterad programmering, OOP, är en programmeringsteknik som reducerar tiden för bl.a. utveckling och felsökning av källkoden. Genom att bryta ner maskinen i mindre beståndsdelar och sen implementera dem som funktionsblock får man bättre kontroll.
Programmeringstekniken som minimerar tiden för utveckling och felsökning
Exempel: Transportbandet - mekaniskt och mjukvarumässigt modulärt
Transportbandet är ett bra exempel där maskinbyggare ibland väljer att sätta ihop flera maskinmoduler för att kunden ska kunna bygga en smart och anpassad maskinlinje för kundens produktion. Här har man som programmerare mycket att vinna genom att använda den objektorienterade programmeringstekniken. För en närmare titt på tekniken, läs vårt utförliga exempel om Spagettikod och Objektorienterad programmering.