Hvad er hardware-abstraktion?

Hvad er hardware-abstraktion, og hvilke fordele giver det dig, når du optager eller genererer signaler til for eksempel testudstyr, dataindsamling eller kontrolsystemer?

Hardware-abstraktion: Hvorfor og hvornår?

Når et computerprogram skal kommunikere med et stykke hardware, er der brug for en driver, som giver programmet et interface til hardwaren. Driveren er typisk specifik til et givent stykke hardware, hvilket vil sige, at når man benytter driveren i et program, låser man sig i høj grad fast til dette instrument. Oftest vil man ikke kunne udskifte hardwaren uden at bygge en ny driver ind i programmet, og der er derfor kun en meget begrænset fleksibilitet i hardwaren.

Løsningen er at indlægge et hardware abstraction layer (HAL), så programmet er adskilt fra driveren. Programmet kommunikerer kun med hardwaren gennem et HAL, hvilket gør, at programmet ikke behøver at vide, hvilken konkret hardware det skal arbejde med. Programmet kender kun til hardwaren gennem et alias, som HAL oversætter til den faktiske hardware. Man siger, at hardwaren er abstraheret, da alle de konkrete detaljer er skjult for programmet.

HAL gør det nemt at udskifte et instrument med et andet, da man kun behøver at lade programmets alias pege på et andet instrument. Det kræver altså ikke nogen ændring i selve softwaren, men kun i dens konfiguration.

Læs mere om vores branchekendskab

Hardware-abstraktion hos GPower

Typisk bliver hardware-abstraktion implementeret ud fra typen af instrument, så man kan inddele instrumenterne i grupper. Hertil er udfordringen dog, at et instrument af type A ikke kan erstattes af et type B instrument – også selvom begge to har den påkrævede funktionalitet for en given måling. Som eksempel kan både et multimeter og et oscilloskop måle en DC-spænding på trods af, at de er vidt forskellige.

Hos GPower løser vi denne udfordring ved at basere vores hardware-abstraktion på funktionalitet i stedet for instrumenttype, hvilket giver større fleksibilitet i brugen af hardware og derfor lettere dataindsamling. Alle instrumenter, der implementerer den samme funktionalitet, kan derfor let udskiftes, og det kræver kun ændring i softwarens konfiguration.

Seneste udgivelser

Fejlhåndtering i LabVIEW [2:4]

Dette indlæg [2:4] er en del af en serie af GPowers softwareudvikler, Jesper Kjær Sørensen, om at bygge solide software- og testsystemer. Kender du det…? ”Det virkede altså på min maskine!” Det er mantraet for alle programmører, der ikke mestrer fejlhåndtering. Det er selvfølgelig ikke noget, DU siger 😊. Men

Læs mere »
To nye Certified LabVIEW Developers hos GPower

To nye Certified LabVIEW Developers hos GPower

Stort tillykke til Serkan Akbulut og Jakob Alsaker, som I sidste uge fik certificeringen Certified LabVIEW Developer (CLD), som er en international anerkendelse af kompetencer inden for udvikling af professionelle og vedligeholdelsesvenlige LabVIEW-applikationer. Certified LabVIEW Developer-certificeringen, som blandt andet fokuserer på kodekvalitet, dokumentation og arkitektur, er det andet niveau i NI’s LabVIEW-certificeringsprogram, som består af:  CLAD

Læs mere »

Læs vores andre blogindlæg

Undgå at dine fejlkoder bliver den nye Blue Screen of Death [3:4]
Undgå at dine fejlkoder bliver den nye Blue Screen of Death [3:4]
Prøv GPower IO-Link til LabVIEW og TestStand GRATIS i 90 dage!
Få 90 dages gratis adgang til GPower IO-Link toolkit [Direkte integration med LabVIEW og TestStand]
GPower og IDA lancerer gratis LabVIEW-kursus for studerende og nyuddannede
GPower og IDA lancerer gratis LabVIEW-kursus for studerende og nyuddannede