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

Code review #5

Open
scomari opened this issue Nov 28, 2019 · 11 comments
Open

Code review #5

scomari opened this issue Nov 28, 2019 · 11 comments
Assignees
Labels
question Further information is requested

Comments

@scomari
Copy link
Collaborator

scomari commented Nov 28, 2019

Opening this virtual issue to collect questions, requests and doubts that occur in time..

@scomari scomari added the question Further information is requested label Nov 28, 2019
@scomari
Copy link
Collaborator Author

scomari commented Nov 28, 2019

In PlatformParameters ci sono questi due nuovi parametri che non sono nel file di configurazione. Inoltre vengono inizializzati con le corrispondenti quantità locali e usati così come sono esclusivamente in CalcExternalLoads. E' una svista o sono variabili di appoggio?

      obj.ext_force_glob = platform_parameters_struct.ext_force_loc;
      obj.ext_torque_glob = platform_parameters_struct.ext_torque_loc;

@scomari
Copy link
Collaborator Author

scomari commented Nov 28, 2019

La descrizione delle funzioni e delle classi va aggiornata in diversi file perchè non più corrispondente agli argomenti I/O, mentre alcune sono da completare proprio.

Ti consiglio di farlo un po' alla volta man mano che apri un particolare file perchè non arriverà mai il giorno in cui dirai "oh, adesso faccio un po' di documentazione".. Te lo dico per esperienza ^^

@ginnero
Copy link
Collaborator

ginnero commented Dec 9, 2019

Manca tra i prerequisiti l' "Optimization toolbox", necessario per chiamare la funzione "LoadConfigAndInit"

@scomari
Copy link
Collaborator Author

scomari commented Dec 16, 2019

In CalcJacobianSw c'è la norma di uno prodotto scalare. Non è pleonastico?

@Nicooo-Wang
Copy link

hi, Dear professor Edoardo Ida:
I've already read your code for several weeks, and also your paper for even several months. it's really hard to fully understand the paper , Can I trouble you to take some time to write some simple comments to the code (Just comment out the summary of the function), so that it will be easier to read the code.
thanks.😁

@EdoardoIda
Copy link
Collaborator

EdoardoIda commented Dec 2, 2021 via email

@Nicooo-Wang
Copy link

Nicooo-Wang commented Dec 2, 2021

Thank you very much for your kind help. In fact, I've already sent an email to bother you about your paper "Rest-to-Rest Trajectory Planning for Underactuated Cable-Driven Parallel Robots" two months ago. After that, I roughly read the book "trajectory planning" you recommended to me, but the book did not consider motion planning and path planning at the same time, I still don't fully understand the paper.
In fact, regarding equation(50) and equation(48), I don’t know how do free parameters k_i formulated in equation(50), and also, I don’t know what is the objective function and boundary conditions of the equation(50). thus, It's hard for me to read the rest of the paper.
Could you please record a short video (a dozen minutes is good) and give a rough explanation of Section IV? I'm so appreciative of your warm heart help, thank you very much for your kind reply!

@EdoardoIda
Copy link
Collaborator

EdoardoIda commented Dec 2, 2021 via email

@Nicooo-Wang
Copy link

Nicooo-Wang commented Dec 3, 2021

Have you read chapters 8 and 9 of the book I suggested (Trajectory Planning for Automatic Machines and Robots)?? It explaines the concept of path planning and trajectory planning through path planning and motion law composition. It sounds strange to me that you say the book did not cover the topic.. Equation 50 of the paper is the boundary value problem (BVP), that is, a differential equation with assigned conditions at both ends of the integration extrema. Said differential equation depends on the robot state x, which is the integrated variable, and on some parameters, which are called free because are not set before hand. The solution of the BVP determines the values of the parameters so that initial and final conditions are met. In fact the boundary value problem WITHOUT the free parameters admits NO analytical solution, since you have too many boundary conditions than equations (the physics of the problem is nasty!). There is NO objective function in the boundary voul problem, it is not an optimization, I don’t know why you mention such things. Once the parameters are determined correctly, the problem is solved within numerical tolerances (the solution is numerically exact, it is not an approximation). Let me know it is clearer From: Nicooo-Wang @.> Sent: Thursday, December 2, 2021 1:55 PM To: IRMA-LAB/cdpr_matlab @.> Cc: EdoardoIda @.>; Assign @.> Subject: Re: [IRMA-LAB/cdpr_matlab] Code review (#5) Thank you very much for your kind help. In fact, I've already sent an email to bother you about your thesis two months ago. After that, I roughly read the book "trajectory planning" you recommended to me, but the book did not consider motion planning and path planning at the same time, I still don't fully understand the paper. In fact, regarding equation(50) and equation(48), I don’t know how do free parameters k_i formulated in equation(50), and also, I don’t know what is the objective function and boundary conditions of the equation(50). thus, It's hard for me to read the rest of the paper. Could you please record a short video (a dozen minutes is good) and give a rough explanation of Section IV? I'm so appreciative of your warm heart help, thank you very much for your kind reply! — You are receiving this because you were assigned. Reply to this email directly, view it on GitHub <#5 (comment)> , or unsubscribe https://github.com/notifications/unsubscribe-auth/AIS4CATPEC5CKYXNTNFGIMLUO5UB3ANCNFSM4JSW26MA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub . https://github.com/notifications/beacon/AIS4CAWGVUKKJMIWB6LWOKDUO5UB3A5CNFSM4JSW26MKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOHKX5K3Y.gif

Thanks for your reply.
Because of time, I didn't read it thoroughly before. The main time is spent reading the code, after which I will read the "path planning" thoroughly.
For equation(50), because I have not seen Boundary Value Problems before, and the translation of professional terms between Chinese and English is not very clear, I confuse it with the optimization problem with boundary conditions. I am so sorry.
Thank you for taking the time to reply to my email. Now I know what should I do. Thank you very much! Have a good day~
😊😊😊

@EdoardoIda
Copy link
Collaborator

EdoardoIda commented Dec 3, 2021 via email

@Nicooo-Wang
Copy link

hi, Dear professor Edoardo Ida:
Sorry to bother you again😊!
Actually, I've learned your code for several months. The project is really admirable, is hard for me to read your code. If you don't mind, please accept me to ask a few questions.

In "workspace_computation" project, every actuated pose should be calculate and check. Every single iteration process is an IGP problem right? The solution to this problem is encapsulated in “SolveUnderActGeoStatWS” function.
image
I've viewed the solve process, the core part of the function is on the first line:
image

In the function "FunGsNoCheck", you updated "cdpr_v.underactuated_platform.geometric_orthogonal" and divided by external load to get “constraint”.
image
I don't understand what is "geometric_orthogonal", why get it in this way? And if I set roll pitch yaw angle as actuated variables, x y z as unactuated variables. The “geometric_orthogonal” variable will be calculated incorrectly and cannot get the correct “constraint”.
image
Why this happed, why IGP problem is solved in this way? The algorithm seems different with paper "Inverse Geometrico-Static Problem of Underconstrained Cable-Driven Parallel Robots With Three Cables - Marco Carricato". To be honest I don't understand the algorithm in this paper, but it looks like you solved the IGP problem in a cleaner way?

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

No branches or pull requests

4 participants