Can't set signal names inside Library Block?
조회 수: 2 (최근 30일)
I have a small model with a number of duplicate blocks which were previously handled by putting the logic for each block into separate models and referencing using the "model" block. This was taking a while to compile, so I wanted to refactor the separate model files into a single library with the understanding it might reduce the search and compile times. I haven't been able to verify it, but it's tidier anyway, so I thought let's give it a shot.
The largest model outputs to a large number of signals (nearly 50) and those are routed directly to a bus creator block. The bus creator takes the signals and signal names, and that is routed to other parts of the model of processing.
When I refactored the separate model files into a single library, I ended up with identically masked blocks, but found that the bus creator was complaining because the signals were not named the same. My thought was, maybe copying into the library and creating the subsystem lost some of that information. Since I still had the separate .slx file, I copied all of the outports and signal wires and pasted it into the library block's subsystem, and... all of the signals were removed. It defaults to 1, 2, 3, etc. When I select show signal name in the outport config and then manually name the signal, the signal is not updating in the outport (the signal label is not considered a signal name? This works everywhere outside of the library editor). When I go to the Model Data panel and list the signals, the signal name column is completely greyed out.
Is it not possible to name and propagate signals from library models? Am I missing something here or am I going to need to manually edit 50 signal names? Or keep my old model around just for reference? Or is it possible for me to derive the signal names from the port names that I had to enter into the mask or something?
I have done a lot of searching on the subject, the only pertinent thing I could find was a post from some time ago saying that copying signals and losing the names was a bug that was fixed years ago, and had something to do with how the properties are stored. Everything else discusses signal propagation in general, but stops short of saying that signal naming in libraries is not possible.