logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[dSPACE] komunikat "The data connection is not invalid"

twardypt91 14 Gru 2011 11:44 2468 2
  • #1 10258201
    twardypt91
    Poziom 20  
    Za pomocą karty DS1103 i Simulinka opracowałem układ sterowania do pewnego urządzenia energoelektronicznego. W skrócie działa ono jak falownik. Sygnały rzeczywiste pobierane są poprzez złącza BNC, a sygnał referencyjny wyznaczony przez model w Simulinku wypuszcza sygnały do rzeczywistego falownika.
    I w czym jest konkretnie problem. Sam model wg mnie działa poprawnie. Podczas kompilacji nie wyświetlają się żadne warningi, czy errory. Karta bez problemu zostaje zaprogramowana. Poniżej dowód w postaci komunikatów, wyświetlanych w matlabowskim Command Window podczas kompilacji:

    ----------------------------------------------------------------------
    Starting build procedure with RTI 5.4 (RTI1103, 15-Mar-2007)
    Model: "T1" (E:\robertp_LAB\TEST_STR\T1.mdl)
    ----------------------------------------------------------------------
    *** Using configuration set : "Configuration1"
    *** Working directory       : "E:\robertp_LAB\TEST_STR"
    *** Optional User System Description File t1_usr.sdf not available
    *** Initializing code generation
    ### Starting Real-Time Workshop build procedure for model: T1
    ### Generating code into build directory: E:\robertp_LAB\TEST_STR\T1_rti1103
    ### Invoking Target Language Compiler on T1.rtw
    	tlc
    	-r
    	E:\robertp_LAB\TEST_STR\T1_rti1103\T1.rtw
    	d:\dspace\matlab\rti1103\tlc\rti1103.tlc
    	-OE:\robertp_LAB\TEST_STR\T1_rti1103
    	-Id:\dspace\matlab\rti1103\tlc
    	-ID:\Program Files\MATLAB\R2006b\toolbox\simulink\blocks\tlc_c
    	-IE:\robertp_LAB\TEST_STR\T1_rti1103\tlc
    	-ID:\Program Files\MATLAB\R2006b\rtw\c\tlc\mw
    	-ID:\Program Files\MATLAB\R2006b\rtw\c\tlc\lib
    	-ID:\Program Files\MATLAB\R2006b\rtw\c\tlc\blocks
    	-ID:\Program Files\MATLAB\R2006b\rtw\c\tlc\fixpt
    	-ID:\Program Files\MATLAB\R2006b\stateflow\c\tlc
    	-aEnforceIntegerDowncast=1
    	-aFoldNonRolledExpr=1
    	-aInlineInvariantSignals=0
    	-aInlineParameters=0
    	-aLocalBlockOutputs=0
    	-aRollThreshold=5
    	-aGenerateReport=0
    	-aGenCodeOnly=0
    	-aRTWVerbose=1
    	-aIncludeHyperlinkInReport=0
    	-aLaunchReport=0
    	-aForceParamTrailComments=0
    	-aGenerateComments=1
    	-aIgnoreCustomStorageClasses=1
    	-aIncHierarchyInIds=0
    	-aMaxRTWIdLen=31
    	-aShowEliminatedStatements=0
    	-aPrefixModelToSubsysFcnNames=1
    	-aIncDataTypeInIds=0
    	-aInsertBlockDesc=0
    	-aSimulinkBlockComments=1
    	-aInlinedPrmAccess="Literals"
    	-aTargetFcnLib="ansi_tfl_tmw.mat"
    	-aIsPILTarget=0
    	-aLogVarNameModifier="rt_"
    	-aGenerateFullHeader=1
    	-aExtMode=0
    	-aExtModeStaticAlloc=0
    	-aExtModeTesting=0
    	-aExtModeStaticAllocSize=1000000
    	-aExtModeTransport=0
    	-aRTWCAPISignals=0
    	-aRTWCAPIParams=0
    	-aGenerateASAP2=0
    	-aInitialSimState="RUN"
    	-aExecutionMode="real-time"
    	-aExecutionModeNonUI="RTSIM"
    	-aTimeScaleFactor="1.0"
    	-aTimeScaleFactorNonUI="OPTION_DISABLED"
    	-aAssertionMode="OFF"
    	-aTAStimulusEngineEnable=0
    	-aCCompilerCommonOpts=""
    	-aCCompilerOptimizationOptsPopup="Default (-O5 -D_INLINE)"
    	-aCCompilerOptimizationOpts=""
    	-aCCompilerOptimizationOptsNonUI="USE_DEFAULT"
    	-aLoadAfterBuild=1
    	-aLoadApplNonUI="ON"
    	-aPlatformSelectionPopup="Auto"
    	-aBoardName=""
    	-aBoardNameNonUI="OPTION_DISABLED"
    	-aNetworkClient=""
    	-aNetworkClientNonUI="OPTION_DISABLED"
    	-aSlaveObject=""
    	-aTRCMaskParameters=0
    	-aTRCGenerateLabels=1
    	-aTRCGenerateVirtualBlocks=1
    	-aTRCGenerateStates=0
    	-aTRCGenerateDerivatives=0
    	-aTRCApplySubsystemPermissions=0
    	-aTRCGenerateParamValues=0
    	-p10000
    
    
    ### Loading TLC function libraries
    
    .....
    ### Initial pass through model to cache user defined code
    ...........
    *** Postprocessing RTI blocks
    *** Starting I/O block checking
    *** Passed I/O block checking
    ### Caching model source code
    ...............................................................................
    ....................................................
    ### Writing header file T1_types.h
    ### Writing header file T1.h
    ### Writing source file T1.c
    .
    ### Writing header file T1_private.h
    ### Writing header file rtmodel.h
    ### Writing source file T1_data.c
    .
    ### Writing header file rt_nonfinite.h
    ### Writing source file rt_nonfinite.c
    ### TLC code generation complete.
    ### Generating TLC interface API.
    ......................................................................
    *** Generating file T1_rti.c
    .....
    *** Generating file T1_rti.mk
    *** Generating Variable Description File T1.trc
    
    -------------------------------------------------------------------------------
    NOTE: The following option in the Configuration Parameters dialog has been 
          used:
    
          Optimization:
          "Conditional input branch execution" On
    
          This leads to code optimization in which blocks are not computed if their
          outputs are not required in the simulation step, for example, if their
          output values are used as input for a Switch block and the Switch
          currently routes another signal. When the corresponding output signals
          are displayed in ControlDesk, their values are static.
    
          To ensure that the blocks are computed, turn off the 
          "Conditional input branch execution" option and rebuild the model.
    -------------------------------------------------------------------------------
    ........................
    *** Optional User Variable Description File T1_usr.trc not available
    *** Found User-Code File T1_usr.c from 18-Oct-2011 15:29:06
    *** Found User Makefile T1_usr.mk from 18-Oct-2011 15:29:06
    .
    ### Processing Template Makefile: d:\dspace\matlab\rti1103\m\rti1103.tmf
    ### T1.mk which is generated from d:\dspace\matlab\rti1103\m\rti1103.tmf is up to date
    ### Building T1: dsmake -f T1.mk WORKINGBOARD=ds1103 GENERATE_REPORT=0 EXTMODE_STATIC_ALLOC=0 TMW_EXTMODE_TESTING=0 EXTMODE_STATIC_ALLOC_SIZE=1000000 EXTMODE_TRANSPORT=0
     
    BUILDING APPLICATION (Single Timer Task Mode) 
     
    WORK  DIRECTORY "E:\robertp_LAB\TEST_STR" 
    BUILD DIRECTORY "E:\robertp_LAB\TEST_STR\T1_rti1103" 
    TARGET COMPILER "D:\PPCTools20m"  
     
    COMPILING  T1.c  
    COMPILING  T1_data.c  
    COMPILING  rt_nonfinite.c  
    COMPILING  D:\dSPACE\MATLAB\RTI1103\C\rti_sim_engine.c  
     
    USING LIBRARY "D:\dSPACE\MATLAB\RTI1103\C\Lib\rtwlib_r2006b_ds1103.lib" 
     
    LINKING APPLICATION ... 
    LINKING FINISHED 
     
    LOADING APPLICATION "T1.sdf" ... 
    [#1] ds1103 - RTI:	Initializing ... (720) 
    [#2] ds1103 - RTI:	Initialization completed (721) 
    [#3] ds1103 - RTI:	Simulation state: RUN (700) 
    LOADING FINISHED 
     
    MAKE PROCESS SUCCEEDED 
     
    ### Successful completion of Real-Time Workshop build procedure for model: T1
    *** Finished RTI build procedure for model T1 
    >> 


    Problem pojawia się, gdy chcę podglądać sygnały w ControlDesku. Otwieram "experiment" - wszystko się ładnie ładuje tj. layout. Ładuję plik *.trc (open variable file)i wywala mi taki komunikat:

    [dSPACE] komunikat "The data connection is not invalid"

    Gdy załaduję ten drugi plik, bodajże *.src (load aplication model) to również wywala ten komunikat:

    [dSPACE] komunikat "The data connection is not invalid"

    Mimo to symulację daje się uruchomić. Ale nie widzę na "ploterach" przebiegów, które są na wejściu (BNC). Nawet, gdy dodam do modelu (gdzieś z boku) prosty subsytem: wejście, gain x razy, wyjście to tutaj również Control Desk nie wiedzieć czemu nie widzi sygnału i go nie wyświetla. W czym może być problem?
  • Pomocny post
    #2 10260400
    kemot55
    Poziom 31  
    Co mi się nie podoba to odwołania do plików z października. Generalnie to dSpace strasznie "kombinuje" z datami. A jak pojawiły by się pliki z datą wcześniejszą (od bieżącej, ustawionej w kompie) to jest dym. Proponuję wyrzucić wszystkie pliki generowane przy kompilacji (oprócz modelu). Można też wyrzucić/przenieść to co dSpace dodaje do modelu (bloczek RTI o ile dodaje). Usunął bym też plik "*.log" (ale gdzie on jest to już Ci nie powiem - jak mi robi problem to poszukuje wszystkich plików należących do dSpace ze zmodyfikowaną datą na bieżącą, sprawdzam co zawierają i zwykle przenoszę do innego katalogu). Nie zwróciłem uwagi na to co on mi wyświetla w ControlDesk'u przy ładowaniu adresów zmiennych. Spróbuj może pomoże.
  • #3 10260953
    twardypt91
    Poziom 20  
    Słuszna uwaga. W tym folderze, gdzie są pliki generowane przez CD faktycznie jest trochę syfu. Zrobię nowy Experiment, Layout i w nowym folderze to skompiluję.

    Dodano po 53 [minuty]:

    Ale generalnie na tym etapie możemy wykluczyć błąd w simulinkowym modelu?
REKLAMA