Techniek P2000 / Flex

Algemeen over P2000 / Flex

P2000 is het alarmeringsonderdeel van C2000 op basis van een FLEX protocol. Het netwerk is opgezet om personeel van de hulpdiensten zoals brandweer, ambulance, politie en KNRM op te roepen in geval van een incident of andere situatie waar hun aanwezigheid gewenst is. Hoewel het systeem opgezet is met een hoge mate van bedrijfszekerheid hebben de meeste gebruikers procedures om uitval of overbelasting van dit belangrijke systeem op te vangen. P2000 is een digitaal systeem dat het oude analoge systeem vervangen heeft. Het systeem is in tegenstelling tot T2000 niet gecodeerd.

Berichten van p2000

De berichten zijn vergelijkbaar met SMS-berichten en zijn opgebouwd uit een aantal onderdelen die per dienst en regio kunnen verschillen. Doorgaans bevatten de berichten:
        - soort incident
        - locatie
        - prioriteit
        - gealarmeerde eenheden

Capcodes    (indeling)

De P2000-pager reageert als hij een bericht ontvangt met de in het geheugen geprogrammeerde capcode. Een capcode is grofweg vergelijkbaar met een telefoonnummer of IP-adres en identificeert de bedoelde ontvanger. Het verschil is echter dat er meerdere ontvangers kunnen zijn. De opzet van het systeem is dat de benodigde eenheden of personen gealarmeerd kunnen worden zonder dat er teveel mensen worden opgeroepen.

Groepsoproepen

Groepsoproepen zijn een standaard onderdeel van het FLEX protocol. Meerdere pagers krijgen hetzelfde bericht. Omdat de hulpdiensten vaak met groepsoproepen werkt (dus meerdere pagers voor dezelfde oproep) is dit één van de belangrijkste redenen geweest om FLEX te kiezen. Voor de groepsoproepen zijn er 16 tijdelijke en dynamische groepscapcodes in de reeks 2029568 t/m 2029583 die alle tegelijkertijd gebruikt kunnen worden indien er meerdere groepsoproepen tegelijk worden verzonden. Daarbij bepaalt het FLEX netwerk wanneer welke pager naar deze tijdelijke en dynamische groepscapcodes moet "luisteren". Deze groepscapcodes zitten standaard in de pager geprogrammeerd.

Bij een oproep voor bijvoorbeeld 4 pagers, met verschillende capcodes, wordt die oproep niet 4 keer verzonden, maar krijgen die pagers tijdens de oproep de instructie om tijdelijk een andere capcode (1 van de 16 groepscodes) aan te nemen en naar een bepaald frame te "luisteren". In die bepaalde frame staat dan de daadwerkelijke oproep en deze wordt dan ook weergegeven.

Bijvoorbeeld:
0102998 01:20:48 25-09-03 FLEX-A INSTR 1600 TEMPORARY ADDRESS: 2029568 -> FRAME 027
0101208 01:20:48 25-09-03 FLEX-A INSTR 1600 TEMPORARY ADDRESS: 2029568 -> FRAME 027
0101209 01:20:48 25-09-03 FLEX-A INSTR 1600 TEMPORARY ADDRESS: 2029568 -> FRAME 027
0101156 01:20:48 25-09-03 FLEX-A INSTR 1600 TEMPORARY ADDRESS: 2029568 -> FRAME 027
2029568 01:20:48 25-09-03 FLEX-A INSTR 1600 "DAADWERKELIJKE BERICHT"

Overzicht FLEX Protocol

Het FLEX formaat is een hoge-snelheid paging protocol ontwikkeld door Motorola Paging Products Group. Flex is een multiple datarate paging protocol en kan dus met meerdere datarates werken tot wel 6400 bits per seconde (bps). Het meest gebruikte paging protocol is het zogenaamde Post Office Code Standardisation Advisory Group (POCSAG) welke met een datarate werkt tot 2400 bps. FLEX maakt gebruik van 4-level Frequency Shift Keying (4-FSK) en een verhoogde datarate. Doordat de mogelijkheden met POGSAC zijn grenzen heeft bereikt is FLEX een logische opvolger, omdat FLEX 2,67 keer zoveel data kan verwerken dan POCSAG (6400 bps vergeleken met 2400 bps). FLEX is ontwikkeld voor dezelfde frequentiegebieden die POCSAG gebruikt.

FLEX is een synchroon protocol. Dat betekent dat alle zenders en ontvangers op hetzelfde moment werken met een vast tijdsinterval. Het FLEX protocol vereist dat alle ontvangers niet meer dan 5 msec uit de synchrone tijd lopen. Door het synchrone signaal wordt de effectiviteit van het protocol beter en ook de batterij van de pager zal langer meegaan. Bij POCSAG en andere asynchrone paging standaarden wordt er gedurende een bepaalde tijd eerst een "startsignaal" verzonden, welke ervoor moet zorgen dat de pager "wakker" wordt en het opvolgende signaal kan ontvangen. Dit "startsignaal" is eigenlijk verspilde zendtijd en verplicht de pager om het ontvangstcircuit constant te voeden om het "startsignaal" te kunnen ontvangen. Dus een asynchroon paging protocol is minder efficiënt dan een synchroon paging protocol met dezelfde datarate, omdat de zendtijd van het "startsignaal" in een asynchroon protocol kan worden gebruikt voor "echte" data. De FLEX pager maakt gebruik van zijn low power CMOS circuit om synchroon met de tijd te blijven en alleen tijdens de vaste intervallen wordt het ontvangstcircuit voor korte tijd ingeschakeld om een eventueel bericht te ontvangen. Het synchroniseren gebeurd door middel van het GPS (Global Positioning System) tijdsignaal.

FLEX Datarate en Modulatie

FLEX kan gebruik maken van 3 datarates: 1600 bits per seconde (bps), 3200 bps en 6400 bps. De modulatie die gebruikt kan worden is 2-level Frequency Shift Keying (2-FSK) en 4-level Frequency Shift Keying (4-FSK). De 6400 bps FLEX wordt altijd verzonden met 4-FSK, de 3200 bps kan met 2-FSK én met 4-FSK verzonden worden en 1600 bps FLEX wordt altijd verzonden met 2-FSK. Dus er zijn maar 2 baudrates in FLEX; 1600 baud en 3200 baud, waarbij een symbool kan bestaan uit 1 of 2 bits.

De frequentie afwijking voor FLEX is 4.8 kHz voor 2-FSK en 1.6 kHz en 4.8 kHz voor 4-FSK. Onderstaande figuur laat een FLEX 2-FSK signaal zien. Een frequentie boven de basisfrequentie (+4.8 kHz) is een binaire 1 en een frequentie onder de basisfrequentie (-4.8 kHz) is een binaire 0. Bij 2-FSK is er maar één bit per symbool, dus het symbool is de bit.

2-FSK Signaal

De data verzonden met 4-FSK maakt gebruik van de Gray-Code, wat niet meer betekent dan dat 2 opeenvolgende levels niet meer dan één bit verschil hebben. De reden om dit zo toe te passen is omdat wanneer een frequentie afwijking op de grens van twee levels ligt en er een verkeerde level wordt gedetecteerd, er maar één bit verkeerd zal zijn. De volgorde van symbolen van -4.8 kHz tot +4.8 kHz is 00, 01, 11, 10. Onderstaande figuur laat een FLEX 4-FSK signaal zien. Het frequentieverschil tussen twee levels is 3.2 kHz.

4-FSK Signaal

FLEX Data Opbouw

Onderstaande figuur laat zien hoe de data in FLEX is georganiseerd in cyclussen en frames. Een uur bestaat uit 15 cyclussen. De cyclussen zijn genummerd 0 t/m 14. Elke cyclus is 4 minuten lang en bestaat uit 128 frames. De frames zijn genummerd 0 t/m 127. Elk frame is 1,875 seconden lang. Een frame is de kleinste hoeveelheid data om te verzenden, maar niet elk frame in elke cyclus hoeft verzonden te worden. Maar om de FLEX pagers gesynchroniseerd te houden moet de pager minimaal 1 frame per 4 minuten ontvangen. Dit zorgt ervoor dat de interne klok van de pager gesynchroniseerd blijft en dat de pager het ontvangstcircuit op tijd inschakelt. Dus de minimale eis is dat de pager een frame ontvangt met hetzelfde nummer als in de vorige cyclus. Bijvoorbeeld: als in cyclus 0 frame 30 is verzonden, dan moet het volgende frame uiterlijk cyclus 1 frame 30 zijn.

Cyclussen en Frames

De pager en zender zijn zo ingesteld dat ze één frame ontvangen en verzenden binnen 2X aaneengesloten frames, waarbij X 0 t/m 7 kan zijn. Dus als X gelijk is aan 0 dan zullen de frames continue ontvangen worden. Wanneer X gelijk is aan 7 dan zal er één frame per 128 frames ontvangen worden, welke dan dus steeds hetzelfde framenummer heeft. Bijvoorbeeld als frame 0 ontvangen wordt en frame 1 t/m 127 worden overgeslagen en frame 0 van de volgende cyclus wordt weer ontvangen, dan is X gelijk aan 7. Dit voorbeeld is de minimale activiteit om de pager gesynchroniseerd te houden.

FLEX Frame Opbouw

De opbouw van elk frame is weergegeven in de figuur hieronder. Elk frame bestaat uit een synchronisatieperiode van 115 ms gevolgd door 11 blokken met data, waarbij elk blok een duur heeft van 160 ms. De blokken zijn genummerd 0 t/m 10.

Opbouw van een frame

De synchronisatieperiode bestaat eigenlijk uit 2 synchronisatieperioden en frame info. De eerste synchronisatieperiode en frame info wordt altijd verzonden met 1600 bps. De eerste synchronisatieperiode identificeren de baudrate (1600 of 3200) en de modulatie (2-FSK of 4-FSK) van de tweede synchronisatieperiode en de daaropvolgende datablokken. De frame info die tussen de twee synchronisatieperiodes inzit, identificeert het huidige frame nummer en cyclus nummer. Het totale aantal bits in de eerste synchronisatieperiode en de frame info is 144 bits met 1600 bps, welke dus een duur krijgt van 90 ms. De tweede synchronisatieperiode duurt 25 ms. Deze periode is ontwikkeld om de pager om te zetten naar de gewenste modulatie en baudrate.

FLEX Datablok Opbouw

Elk blok bestaat uit 8, 16 of 32 codewoorden respectievelijk voor 1600 bps, 3200 bps of 6400 bps. Elke codewoord is 32 bits lang en bestaat uit informatie en pariteit bits. De opbouw van deze codewoorden komt terug in het volgende deel. Hier wordt alleen besproken hoe de codewoorden worden verzonden. Van de codewoorden worden eerst alle eerste databits verzonden, vervolgens alle tweede databits enzovoorts tot en met het 32e databit zodat alle codewoorden zijn verzonden. In onderstaande figuur is te zien in welke volgorde de codewoorden worden verzonden met 1600 bps. De 32-bits codewoorden zijn uitgelegd over rijen onder elkaar en worden vervolgens per kolom verzonden. Elke kolom duurt 5 ms om te verzenden.

Volgorde van codewoorden

Het verzenden van de data in de blokken wordt gedaan volgens de opgelegde modulatie en baudrate. Bij 2-FSK geldt dat het signaal overeenkomt met het bitpatroon. Elke bit is gelijk aan één van de 2 mogelijke frequenties. Bij 4-FSK geldt dat 2 bits bij elkaar worden genomen en aan de hand van die formatie één van de 4 mogelijke frequenties wordt gekozen

FLEX Codewoord Opbouw

Elk codewoord is 32 bits lang en maakt gebruik van dezelfde error-correctie-techniek als POCSAG. In de onderstaande figuur staat de opmaak van een codewoord. De data bestaat uit een Bose-Chaudhuri-Hocquenhem (BCH) forward error correctie met een extra even pariteitbit om de 32 bits woord vol te maken.

Opmaak van codewoord

Flex Codering Opbouw

De 11 blokken met in total 88 codewoorden met 1600 bps FLEX is de basis van de FLEX codering opbouw. Bij een hogere rate worden de blokken simpel vermenigvuldigd met 2 (3200 bps) of 4 (6400 bps). Aan elk 1600 bps blok wordt een fase gegeven en aan iedere fase wordt een letter gekoppeld (a, b, c en d). Bij 1600 bps wordt alleen fase a verzonden. Bij 3200 bps worden fase a en c verzonden en bij 6400 bps worden alle 4 de fases verzonden. Elk blok bestaat uit 8 codewoorden voor elke fase en worden gemultiplexed zodat de verzendtijd van een blok 160 ms wordt. Bij 6400 bps bestaat elk blok uit 8 codewoorden bij fase a, 8 codewoorden bij fase b, 8 codewoorden bij fase c en 8 codewoorden bij fase d. De FLEX codering opbouw is weergegeven in de onderstaande figuur. De 11 blokken weergegeven in de volgorde waarmee de informatie is geplaatst. Het eerste codewoord van het eerste blok bevat de blok informatie, wat een overhead codewoord is om de opvolgende codewoorden te identificeren. Het 2e tot en met 88e codewoord bevatten het adresveld, vectorveld, berichtdata veld en doelloze codewoorden. Het aantal codewoorden in elk veld is gebaseerd op de verzonden informatie. Het adresveld identificeert één of meerdere pagers. Het vectorveld identificeert het berichttype (tone-only, numeriek, alfanumeriek, etc.) en waar de berichtdata zich bevindt in het berichtveld.

Codering opbouw

Voor elk 1600 bps FLEX gecodeerde opbouw is één overhead codewoord (blok informatie) per 88 codewoorden. Bij POGSAC is er één overhead codewoord (synchronisatiewoord) per 17 codewoorden. Het percentage van de codering bestemd voor overhead is van 5,88% bij POGSAC gereduceerd tot 1,14% bij FLEX.