IRMA-LAB / cdpr_matlab

A Matlab library for cable driven parallel robots.
GNU General Public License v3.0
22 stars 5 forks source link

Code review #5

Open scomari opened 4 years ago

scomari commented 4 years ago

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

scomari commented 4 years ago

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 commented 4 years ago

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 commented 4 years ago

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

scomari commented 4 years ago

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

Nicooo-Wang commented 2 years ago

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 commented 2 years ago

Dear Nico Wang,

It would help me to understand which paper are you referring to.

Our code is shared on github, but not well documented, we are aware of it. Unfortunately, we are not professionals who work on code deployment and revision, thus our source code on github is meant as a guidance for third party development, not to be taken “as is”. Nonetheless, if you could be more specific, I would be glad to help you in the little time I have!

Regards,

Edoardo

From: Nicooo-Wang @.> Sent: Thursday, December 2, 2021 8:28 AM To: IRMA-LAB/cdpr_matlab @.> Cc: EdoardoIda @.>; Assign @.> Subject: Re: [IRMA-LAB/cdpr_matlab] Code review (#5)

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.😁

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/IRMA-LAB/cdpr_matlab/issues/5#issuecomment-984360380 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AIS4CATWFQCAEAD5DGNWXMLUO4NZZANCNFSM4JSW26MA . 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/AIS4CAT4NY3JKT6ONPGBHV3UO4NZZA5CNFSM4JSW26MKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOHKWCLPA.gif

Nicooo-Wang commented 2 years ago

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 commented 2 years ago

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 https://github.com/IRMA-LAB/cdpr_matlab/issues/5#issuecomment-984601967 , 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

Nicooo-Wang commented 2 years ago

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 commented 2 years ago

Not a problem at all! Have a nice day!

Get Outlook for Androidhttps://aka.ms/AAb9ysg


From: Nicooo-Wang @.> Sent: Friday, December 3, 2021 2:16:36 AM To: IRMA-LAB/cdpr_matlab @.> Cc: EdoardoIda @.>; Assign @.> Subject: Re: [IRMA-LAB/cdpr_matlab] Code review (#5)

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 (#5https://github.com/IRMA-LAB/cdpr_matlab/issues/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)https://github.com/IRMA-LAB/cdpr_matlab/issues/5#issuecomment-984601967> , 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 carefully 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~ 😊😊😊

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHubhttps://github.com/IRMA-LAB/cdpr_matlab/issues/5#issuecomment-985132491, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIS4CAT6OMQVP3XFDKBHPSDUPAK7JANCNFSM4JSW26MA. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Nicooo-Wang commented 2 years ago

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?