Hi,

Le 12/04/2016 16:39, Paul Bignier a écrit :

Hello Graham,

Pleased to hear that you're using Xcos, it's always good to have feedback!

1) Right-clicking a "link" (which you call "signal") pops "Format" and "Link style" menus which enables you to label/color it as well as using automatic layouts (also accessible via keyboard shortcuts).

2) When dragging a link from a port, you can click in the diagram at random points. Those will be "control points" through which the link will pass regardless of the position of its connecting blocks. You may play with the demos to check it out.

3) If you want to label ports at the moment, you need to define your own block and set its graphics.in_label & graphics.out_label in its interface function (typically, the ones in modules/scicos_blocks/macros/*).

4) That goes with the 1).

5) I don't understand why you would mask a superblock before designing it properly. Masks are meant to be created once your block is stable, so there's something I'm missing here.

For 5) it's quite natural to design a system it a top-down approach where you consider a subsystem as a black-box first, set up the requirements for this black box and how it will interact with the system as a whole, then design, or have designed, the inside of your black box. This enables a parallel workflow where an integrator can verify the behaviour and simulate the whole system when all parts are ready. Xcos is rather bottom-up because of the model verification for simulation done each time you insert a block.

In a sense, Xcos is more suitted for writing what's inside the black-box than for designing whole sytems where you typically less constrained by simulability but want to have a link to requirements, traceability, verification & validation, tests, costs etc.

This could also be a good idea to have black-box for import of other models (I think FMU here). You don't have the implementation for a subsystem but want to consider its input/output.

Hope this helps!
Regars,
Paul

On 04/12/2016 02:30 PM, Graham Bartlett wrote:
I've done quite a lot of work with Matlab and Simulink in previous jobs. At my new place, I'm checking out Xcos (and hence Scilab) as a free alternative to Simulink, partly on principle, and partly so our team aren't constrained by bean-counters telling us how many development seats we can afford. :)

What's currently bugging me with Xcos is subsystem and signal labelling, which are fundamental to building a design that's maintainable. There are a few newbie things I'm trying to work out with this, none of which I've managed to find in the Xcos tutorials, help docs, or the wiki. I went looking for a mailing list FAQ but I didn't see one.

1) The first one should be simple. How do I make signals default to horizontal instead of rat's-nest (point-to-point)?

2) Perhaps related to that, is it possible to manually drag signals to where I want them to be laid out? Some time back I used VisSim (for another example) - that also routed signals automatically, but it had a "wiring" block which let you direct them via a particular point. I can't find anything like that in Xcos. Of course I can use from/goto blocks where the automatic layout doesn't look good, or I could use unity gains or single-input sum blocks as a hack to force signals through some point without changing them, but none of that is really ideal. My rule of thumb is that if the design layout looks messy or rushed then the thought processes involved probably were too, and that makes me worried.

3) In Simulink, I can put labels on inputs and outputs. If I've got a subsystem calculating biquad filter coefficients, say, I can label the inputs "cornerFreq", "qFactor" and "sampleTime", and the outputs as "b0/b1/b2/a0/a1/a2". When I drop an instance of that subsystem into a diagram, those names will appear next to the inputs/outputs. That makes the design clearer, instead of having to dig into the subsystem and look for annotion text in there (or worse, figure it out directly from the design itself). Is there a way to make Xcos subsystems do this?

4) Simulink lets you put names on signal flows as they come out of an output. As the signal flow goes through the design, Simulink labels the signal. Typically you'd give this a variable name. Auto-coding can then use that variable name, or if you're coding up a design manually then you can use that name. I can see the "Kalman" demo doing something like this (or perhaps like point 2, I can't tell), but I can't find anywhere how those names for flows are set up.

5) Masks. If it's your own block, Simulink lets you look at the subsystem under the mask. Xcos lets you put a mask on a block, but I can't then see any way to look at the subsystem under the mask, except by completely deleting the mask. For us mere mortals whose designs don't always work first time every time, this could be a problem.

Thanks folks.

Graham.

-------------------------------------------------------------------------
The information contained in this email may be privileged and is intended for the personal and confidential use of the recipient(s) named above. If the reader of this message is not the intended recipient or an agent responsible for delivering it to the intended recipient, you are hereby notified that you have received this email in error and that any review, dissemination or copying of this message is strictly prohibited. If you have received this email in error, please notify us immediately. This message and any attachments are believed to be free of any virus or defect that might affect any computer system into which it is received and opened. However, it is the responsibility of the recipient to ensure that it is virus free; therefore, no responsibility is accepted for any loss or damage in any way arising from its use.
---------------------------------------------------------------------------
Elektron Technology plc
Registered in England No.448274.
Broers Building, 21 JJ Thomson Avenue, Cambridge, CB3 0FA
_______________________________________________
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users


--
Pierre-Aimé Agnel
R&D Projects Manager
Phone:  +33.1.80.77.04.67
Mobile: +33.6.82.49.35.23
-----------------------------------------------------------
Scilab Enterprises
143bis rue Yves Le Coz - 78000 Versailles, France
Phone: +33.1.80.77.04.60
http://www.scilab-enterprises.com

_______________________________________________
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users

Reply via email to