SVIF-T Övervaknings- och Kontrollgränssnitt
Innehåll
Introduktion
SVIF-T använder en förenklad version av RS232 seriegränssnitt, och är därför enkelt att ansluta till varje typ av dator. Från PC och arbetssationer ner till små 8bit mikrocontroller, alla har de - eller har åtminstone möjligheten att till låg kostnad lägga till - en seriport.
Protokollet som används är "öppet", och därför lätt att integrera i annan programvara. Att göra så förenklas ytterligare av att det finns källkodsexempel och verktyg för test fritt tillgängliga.
Bakgrund
Grunden till SVIF-T lades för mer än 10 år sedan...
Efter att ha arbetat ett antal år inom flera företag med övervaknings -protokoll och -gränsnitt föddes denna ide till ett mycket mera generellt och billigare gränssnitt.
Bokstäverna i SVIF-T kommer från "SuperVision Interface - Telecom grade". Ordet "telecom" används för att indikera:
- att SVIF-T är optimerat för större system som byggs på ett gemensamt jordreferensplan (Signal Reference Potenital Plane, SRPP) och de kabellängder och störnivåer som förekommer där.
- att det genom SVIF-T struktur är mycket lätt att införa redundans - det går alltså att bygga mycket tillförlitliga ("carrier grade") tillämpningar.
Denna kravbild är dock vanlig för de flesta elektroniksystem idag, inte bara telecom.
SVIF-T är ett "öppet" gränssnitt, vilket innebär:
- att dess specifikationer är fritt tillgängliga härfifrån, dels i form av
en specifikation för "Physical Interface and
Framing" och dels i form av specifikation för
"Message Format".
- att det finns källkod som referens för grundläggande protokollhantering och även enkla verktyg för test och utvärdering - se denna länk.
Licensen för att använda
dokument och programkod kommer att motsvara LGPL - dvs det är fritt att använda,
kopiera och modifiera, förutsatt att ursprunget och gjorda modifieringar alltid
anges.Fysiskt Gränsnitt
Fysiskt har varje enhet som implementerar SVIF-T alltid två skärmade RJ12 (6-pol modular) kontaktdon, som används enligt följande:
- Pin1: +Power (+7-10V Strömförsörjning)
- Pin2: TD (Seriell 9600Baud utgång enligt RS232 nivåer)
- Pin3: Jord (SRPP)
- Pin4: RD (Seriell 9600Baud ingång enligt RS232 nivåer)
- Pin5: förbunden don1-don2
- Pin6: förbunden don1-don2
- skärm: Jord (SRPP)
Alla kablar har pin 2 och pin 3 korsade, i övrigt rak förbindning.
Upp till 255 enheter kan sammanbindas i en kedja, och kan övervakas/styras fråpn endera eller båda (vid redundans) ändarna.
De flesta enheter har dessutom en lysdiod. Den lyser normalt med grönt sken, men kan styras till blinkande (B-larm) eller fast (A-larm) rött sken.
Förbindelsen mellan de olika enheterna sker i form av en kedja enligt figuren ovan.
Om kedjan övervakas/styrs från endast en ände, motsvarar tillgängligheten en normal buss.
Genom att övervaka från båda ändar, kan inget enkelfel störa övervakningen.
Mjukvaruprotokoll
Att beskriva hela protokollet här skulle ta för mycket plats. Istället listar vi bara några av protokollets viktigare egenskaper:
- Det är av begäran/svar (request/response) typ, där kommunikationen initieras av övervakaren (med få undantag).
- Det är kompakt, trots att det har många funktioner. Detta har uppnåtts genom en enkel form av komprimering.
- Det är objektorienterat, och kan byggas ut med nya klasser om så behövs.
Klasser fins bl.a. för hantering av felflaggor, bit/pin avkänning/styrning och
mätvärden. Dessa kommer att fungera lika oavsett andra tillägg.
- Klasserna ger en enkel abstraktion - det är inte nödvändigt för övervakaren
att känna till bitpositioner i register för att kunna hantera larmistuationer.
- Det har flera
adressmoder: absolut, relativ och broadcast. Den relativa adressmoden anger
antalet "hopp i kedjan" och kräver därför ingen konfigurering.
Vi hänvisar till specifikationen ovan för fullständig beskrivning.
Klassificering av felflaggor ingår i protokollet - den
rekommenderade betydelsen av felen är:
- A-larm: Åtgärd krävs
snarast/omedelbart. Felet kan störa systemets funktion.
- B-larm: Åtgärd kan
vänta till nästa ordinarie service. Felet som uppstått stör inte systemets
funktion pga redundans eller motsvarande.
- varken A- eller B- larm: Inget fel.
Indikeringen är enbart för information.