Zoeken

Systeembeschrijving toolkit CCOL

Verkeersregeltoestellen voorzien van een CVN/C-interface kunnen worden uitgevoerd met een fabrikantonafhankelijk applicatieprogramma dat is ontwikkeld met de Toolkit CCOL.

CCOL SYSTEEMBEVESTIGING.jpg

Het Toolkit CCOL ontwikkelsysteem voor het ontwerpen en testen van verkeerslichtenregelingen in de programmeertaal C bestaat uit:

 

  • Een PC, MS Windows, met harde schijf en een printer; 
  • Een C-compiler met editor en linker; 
  • De Toolkit CCOL, bestaande uit een basisprogramma en aantal functionele opties.

Kenmerken van de Toolkit CCOL

  • De Toolkit CCOL is speciaal ontwikkeld voor het ontwerpen en testen van verkeerslichtenregelingen in de programmeertaal C. 
  • De Toolkit is opgebouwd uit een reeks basis- en systeemfuncties, waarmee een regel(test)programma wordt samengesteld. De afwikkeling van de basisfuncties wordt bestuurd vanuit de applicatiefuncties, die door de gebruiker worden gedefinieerd. 
  • Het is mogelijk om het ontworpen regelprogramma, zonder handmatige vertaalslagen direct in de verkeersregelautomaat te implementeren. 
  • Het display-, simulatie- en besturingsprogramma zijn hulpprogramma's voor het testen van het regelprogramma in de ontwikkelomgeving. 
  • Voor het ontwerpen van regelprogramma's met een dergelijk ontwikkelsysteem is een zekere basiskennis van de programmeertaal C en vaardigheid met het gebruik van MS Windows vereist. 
  • De Toolkit CCOL voor Windows is ontwikkeld voor het gebruik op PC onder het operating systeem MS Windows, vanaf versie Windows 95. 
  • De Toolkit CCOL maakt gebruik van de compiler Visual C++ van Microsoft Corp. 

Basispakket Toolkit CCOL

De Toolkit CCOL is opgebouwd uit een basispakket en een groot aantal functionele opties.

Het basispakket bevat de volgende modules, die onderstaand nader worden toegelicht:

 

  • Regelprogramma; 
  • Displayprogramma; 
  • Simulatieprogramma; 
  • Besturingsfuncties; 
  • Testomgeving. 

 

 

Het Regelprogramma omvat de basisfuncties voor de afhandeling van de detectie, fasecycli, conflicten, hulpelementen, tijdelementen, tellerelementen, softwareschakelaars, parameterelementen en modules.

 

Het Displayprogramma omvat de basisfuncties voor de display van de verkeerssituatie en de status van de ingangssignalen (detectie en overige ingangen) en de uitgangssignalen (fasecycli en overige uitgangen) op het scherm van het computersysteem.

 

Het Simulatieprogramma omvat de basisfuncties voor het automatisch genereren van de ingangssignalen (detectie), met behulp van een simulatiemodel. Het simulatieprogramma genereert een verkeersproces op basis van verkeerskenmerken, zoals intensiteiten, afrijcapaciteiten, etc.

 

De Besturingsfuncties zijn de systeemfuncties voor het testprogramma, zoals het handmatig opzetten van ingangssignalen (detectie) via toetsenbord of muis, de (systeem-) klokafhandeling, etc.

 

In de Testomgeving van CCOL worden de verkeerssituatie en de verkeerslichtenregeling grafisch weergegeven, zodat visueel de werking van het regelprogramma kan worden gecontroleerd. De testomgeving draait onder Windows en maakt gebruik van de Visual C++ compiler versie 6.0 (standaard) van Microsoft, hiermee worden 32 bits Windows applicaties gebouwd. Deze compiler werkt met Windows 95 of hoger.
De commando-parser is in de testomgeving geïntegreerd voor het opvragen/ wijzigen van parameters en het opvragen van de status van de regelvariabelen. Tevens is er een apart debugvenster gecreëerd. Ook is het mogelijk om detectiestoringen op een eenvoudige wijze te simuleren en regelingen met elkaar te koppelen.

Overige kenmerken van de Windows testomgeving zijn:

 

  • apart venster voor het gebruik van de commandoparser in de testomgeving; 
  • extra debugvenster voor gebruikersboodschappen (xyprintf()); 
  • uitwisseling van koppelsignalen tussen verschillende regelapplicaties; 
  • helpfunctie met een overzicht van de commando's van de commandoparser; 
  • ook grotere achtergrondplaatjes dan 640x480 zijn nu mogelijk; 
  • in de testomgeving gewijzigde parameters kunnen worden bewaard (opslag in een datafile); 
  • uitgebreide statusbalk waarop ook b.v. fasebewaking wordt gemeld.

 

Uitbreidingen toolkit CCOL

Met ingang van versie 7.0 is CCOL uitgebreid met het V-log protocol voor inwinning van verkeerskundige data. Verkeersregeltoestellen zijn daarmee voorbereid om nagenoeg alle relevante verkeerskundige data af te geven. Teneinde de het protocol daadwerkelijk standaard en fabrikant-onafhankelijk te houden dient een V-log licentie overeenkomst te worden ondertekend en geretourneerd. De licentie ontvangt u na opdracht, gelijktijdig met de opdrachtbevestiging.

 

Het basispakket Toolkit CCOL voor Windows kan worden uitgebreid met de hieronder aangegeven functionele uitbreidingen.

Ten behoeve van de regelapplicatie

Uitgebreide modulestructuur (UMS)

De uitgebreide modulestructuur kan worden gebruikt bij de specificatie van de volgorde van afwikkeling van de fasecycli. De uitgebreide modulestructuur bevat naast de primaire realisaties ook alternatieve, versnelde en voorkeurrealisaties. Met behulp van deze extra realisatie mogelijkheden kan de flexibiliteit van de modulestructuur (basispakket) aanmerkelijk worden vergroot.

 

Signaalplansturing (SPS)

Signaalplansturing is met name geschikt voor de regeling van verschillende kruispunten in een gecoördineerde "streng" (groene golf). In een signaalplan worden de fasecycli (voertuigafhankelijk) afgewikkeld binnen een vaste cyclustijd. Er kunnen meerdere signaalplannen worden gedefinieerd, b.v. verschillende signaalplannen voor de diverse spitsperioden (ochtendspits, avondspits, middagspits en dalperiode). De signaalplansturing levert stuurvoorwaarden (RR_PL, YS_PL, YW_PL, YV_PL, YM_PL) die in het regelprogramma kunnen worden gebruikt bij de specificatie van de afwikkeling van de fasecycli. De signaalplansturing kan b.v. met een modulesturing worden gecombineerd.

 

Uitgebreide Signaal Plansturing (USP)

De uitgebreide signaalplansturing bevat een speciale structuur voor de volgorde van afwikkeling van de fasecycli. Fasecycli kunnen binnen deze speciale structuur primair, versneld primair en alternatief worden gerealiseerd. De fasecycli worden primair en versneld primair gerealiseerd op basis van de ingestelde tijden in het actieve signaalplan. De volgorde van afwikkeling van de primaire fasecycli ligt hiermee immers vast. Fasecycli kunnen alternatief worden gerealiseerd volgens het langst-wachtende principe, indien er in de regeling voldoende vrije ruimte aanwezig is. De ontworpen regeling in de signaalplan-structuur kan tevens als voertuigafhankelijke regeling worden gebruikt in de uren dat de kruispunten in de streng ongekoppeld kunnen worden geregeld. Hierdoor is ook het schakelen tussen gekoppeld en ongekoppeld bedrijf sterk vereenvoudigd.

 

Langst Wachtende Structuur (LWS)

De langstwachtende structuur kan worden gebruikt bij de specificatie van de volgorde van afwikkeling van de fasecycli. De volgorde van afwikkeling van de fasecycli in deze structuur geschiedt op basis van de langste rood-na-aanvraagtijden. De langstwachtende structuur onderscheidt primaire, alternatieve en mee-realisaties.

 

Langst Wachtende Modulestructuur (LWM)

De langstwachtende modulestructuur kan worden gebruikt bij de specificatie van de volgorde van afwikkeling van de fasecycli. De langstwachtende modulestructuur combineert de functionaliteit van de langstwachtende en de uitgebreide modulestructuur.
Bij de langstwachtende modulestructuur is het bijvoorbeeld mogelijk om de primaire realisaties volgens de uitgebreide modulestructuur af te wikkelen en de alternatieve realisaties op basis van de langste-rood-na-

aanvraagtijden te realiseren.

 

Uitgebreide Standaard Functies (USF)

De uitgebreide "standaard" functies omvat meer dan 35 "standaard" applicatiefuncties welke zijn opgenomen in een bibliotheek t.b.v. de specificatie van de aanvraag, het meetcriterium, de wachtstand, het meeverlengen, de afwikkeling van openbaar vervoer, de klok/datum perioden en het gebruik van meerdere maximum groentijden.

 

Selectieve Detectiemodule VETAG / SICS (SDV)

Deze selectieve detectiemodule verzorgt de afhandeling van (seriële) selectieve detectieberichten van VETAG en SICS. Een selectief detectiebericht bevat de gedecodeerde voertuiginformatie, zoals voertuigtype, lijnnummer, voertuignummer, e.d. Bij gebruik van deze CCOL module kan de toetsing op de juiste voertuigen in het applicatieprogramma plaatsvinden (i.p.v. in het wallstation). Lijnnummers kunnen hierdoor eenvoudig met een terminal of vanuit een verkeerscentrale worden gewijzigd. De selectieve detectiemodule bewaakt de selectieve detectielussen op detectiestoring en ondergedrag. Tevens bevat de module een displayfunctie waardoor het mogelijk is om de gedecodeerde voertuiginformatie te monitoren m.b.v. de commandoparser van CCOL (terminalfunctie op de RS232c-poort) van de CVN C-interface.

 

Selectieve Detectiemodule KAR (SDK)

De selectieve detectiemodule (KAR) is geschikt voor de afhandeling van de uitgebreide selectieve detectieberichten t.b.v. het gebruik van Korte Afstand Radio (KAR).

Ten behoeve van simulatie

Simulatie met AIMSUN2 en PRACTICE (LIB files) is, mits gebruik wordt gemaakt van een Visual C++ compiler, standaard mogelijk. Voor koppeling met FLEXSYT2/FLASH, VISSIM, PARAMICS en PRACTICE (bij toepassing van een andere compiler dan Visual C++) is een bijbehorende CCOL module nodig.

 

Modulen ten behoeve van de koppeling met simulatiepakketten

Deze modulen dienen om een verkeersregeling, die met de Toolkit CCOL is ontworpen, te koppelen met het bedoelde simulatiepakket. Het simulatieproces kan visueel worden gevolgd in de testomgeving van het simulatiepakket. De commandoparser van CCOL kan worden gebruikt voor het opvragen/ wijzigen van parameters en het opvragen van de status van de regelvariabelen.
Bij toepassing van de Visual C++ compiler is koppeling met AIMSUN2 en PRACTICE (LIB files) standaard mogelijk. Voor koppeling met FLEXSYT2/FLASH, VISSIM en PARAMICS en PRACTICE (indien afwijkende compiler) zijn wel speciale modules noodzakelijk.

 

Compiler Microsoft Visual C++

Dit is de aanbevolen compiler voor gebruik in combinatie met de Toolkit CCOL.
De compiler kan indien gewenst worden meegeleverd met het CCOL pakket.

 

Recplay

Met RecPlay kunnen simulaties worden opgenomen en afgespeeld. Als bijvoorbeeld een applicatie in de simulatie wordt gezet (F2), dan kan deze simulatie worden opgenomen. Als vervolgens blijkt dat de simulatie heeft geresulteerd in het één of meerdere keren aanspreken van de fasebewaking, dan kunnen al deze situaties opnieuw worden afgespeeld, om te kijken wat er precies is gebeurd.

 

Standaard worden de 10 minuten voorafgaand aan het aanspreken van de fasebewaking opgeslagen. Er kan door de opname worden gescrolld, zodat er kan worden gekozen vanaf welk moment de opname wordt afgespeeld. Na wijziging van de code kan de opname opnieuw worden afgespeeld om te zien of hiermee het probleem is verholpen. RecPlay is eenvoudig in een applicatie in te bouwen.

 

De opnamen kunnen tevens grafisch worden weergegeven in de vorm van bijvoorbeeld een fasediagram. Ook andere gegevens kunnen grafisch worden weergegeven, bijvoorbeeld het actieve blok, de status van hulpelementen, timers of van door de applicatieprogrammeur gedefinieerde variabelen, enz. De grafieken kunnen vrijelijk worden gedefinieerd.
Indien er tijdens het opnemen een fasebewaking (FB) optreedt, wordt de opname weggeschreven naar het bestand RecPlay1.log. Daarnaast wordt er een bestand FBInfo.rpg weggeschreven met daarin grafieken gedefinieerd die, door deze in te lezen met de viewer, een overzicht geven van alle CCOL-variabelen die van belang zijn geweest bij het optreden van de betreffende fasebewaking, bijv. de interne signaalgroeptoestand van de richting die op fasebewaking is gegaan en van alle zijn conflicten die zijn gerealiseerd, instructievariabelen die van invloed zijn op de voortgang van de modulemolen, zoals YML, 
maar ook PP, XPG, enz, en alle instructievariabelen die van invloed zijn op het groen worden van richtingen, zoals X en RR. Verder is ook het verloop van het actieve blok zichtbaar.

 

Documentatie

De documentatie van de Toolkit CCOL bevat voor de gebruiker een zeer uitvoerige beschrijving van de werking, de opbouw en van alle variabelen en functies.
 

Broncode

Voor normaal (routinematig) gebruik van CCOL is het niet noodzakelijk te beschikken over de broncode van CCOL. Indien de broncode, bijvoorbeeld ten behoeve van bepaalde implementatiedoeleinden, toch noodzakelijk is kan deze als optie worden geleverd. Dat geldt zowel voor de CCOL regelaar als voor de daarbij gewenste functionele uitbreidingen.