Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sl_ibvs.slx #9

Open
jxx0350 opened this issue Dec 19, 2024 · 6 comments
Open

sl_ibvs.slx #9

jxx0350 opened this issue Dec 19, 2024 · 6 comments
Assignees

Comments

@jxx0350
Copy link

jxx0350 commented Dec 19, 2024

In the new version of RVC3, you seem to have deleted the sl_ibvs.slx in the previous version, can you please provide the sl_ibvs.slx file for the applicable version, thank you and have a nice life.

@petercorke
Copy link
Owner

hi @remo-pillat, this model requires a bunch of blocks that are not included in the shipped roblocks.slx, they were in previous versions. I can copy and paste in the required blocks, but what's the best way to handle categories of blocks these days. Are there tabs? In my old rowlocks I used masked blocks for the groups of blocks. Appreciate your input here.

@remo-pillat
Copy link
Collaborator

@petercorke , it depends how many blocks you plan to have in this new sublibrary.

In general, there are two ways to handle sublibraries (see section "Create a Sublibrary" here):

(1) Use a subsystem block and place the blocks directly in that subsystem. This is fine for a few blocks that are closely related to the blocks in the main library. I think that's what you have done in the past.
(2) Create a new library with your blocks, e.g. visualservolib. The place an empty subsystem block in roblocks that has a custom OpenFcn callback. In the callback, you can just call visualservolib. When a user clicks on that subsystem block, it will open visualservolib, or they can use visualservolib independently. You can see an example of this in robotsyslib (part of Robotics System Toolbox). Each subsystem block in there opens a separate sublibrary.

Generally, newer Simulink libraries end with "lib", but you could also stick with your "blocks" precedent from roblocks.

@petercorke
Copy link
Owner

I think perhaps two libraries, mobilelib and visualservolib, and have roblocks contain these as per option 2) above.

That way we can copy the existing roblocks to mobilelib.

@remo-pillat
Copy link
Collaborator

That way we can copy the existing roblocks to mobilelib.

That plan sounds good. To make sure that existing Simulink models (including the ones shipping with the book) continue to work, you need to create a "forwarding table" in roblocks for each of the blocks that's moving to mobilelib. See the documentation for Move Block from One Library to Another

@petercorke
Copy link
Owner

The alternative would be to relink them all into the models which would be a pain. Nice feature!

@petercorke
Copy link
Owner

This model is not referenced in the third edition but it's ported now. For the moment it's on the simulink branch, and the code is toolbox/sl_ibvs.slx. I'd appreciate any feedback.

The biggest hassle is the third edition uses the convention that a set of points is Nx2 rather than 2xN as in previous editions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants