Trufiadok Posted November 18, 2018 Author Share Posted November 18, 2018 8 minutes ago, Jasseji said: Yesss, it's working now, 100 times better than the IR control Now, what is the secret behind the Dragon docking ? Did you add something to the Docking port cfg itself for it to have a transform as the EndEffector ? (meaning in you video the white ball switches from the LEE w Cam to the Docking Port on the Nose of the Dragon - HOW ? :D) This is the VirtualEndEffector function - "VEE" button. You have to select the DockingNode part that you want to set as an endeffector. After push "VEE" button. If selection is OK, this part will be the endeffector, white ball show the result. If you choose "LeftAlt" without selecting anything and pressing "VEE", LEE will be the endeffector, again - This is the "Clear VirtualEndEffector" function. Quote Link to comment Share on other sites More sharing options...
Jasseji Posted November 18, 2018 Share Posted November 18, 2018 Man, this rocks massively - did you set up your Patreon account already ? Quote Link to comment Share on other sites More sharing options...
COL.R.Neville Posted November 19, 2018 Share Posted November 19, 2018 are you using anything special to 1.3.1 and out? or do we just need to recompile everything for 1.2.2. Quote Link to comment Share on other sites More sharing options...
Jasseji Posted November 19, 2018 Share Posted November 19, 2018 On 11/18/2018 at 6:49 PM, Trufiadok said: This is the VirtualEndEffector function - "VEE" button. You have to select the DockingNode part that you want to set as an endeffector. After push "VEE" button. If selection is OK, this part will be the endeffector, white ball show the result. If you choose "LeftAlt" without selecting anything and pressing "VEE", LEE will be the endeffector, again - This is the "Clear VirtualEndEffector" function. Hey again, is it safe actually to Install the normal Infernal Robotics alongside ? I cant make the normal stuff from IR to work (hinges, gantry etc, the icon isnt showing at all) Quote Link to comment Share on other sites More sharing options...
COL.R.Neville Posted November 20, 2018 Share Posted November 20, 2018 7 hours ago, Jasseji said: Hey again, is it safe actually to Install the normal Infernal Robotics alongside ? I cant make the normal stuff from IR to work (hinges, gantry etc, the icon isnt showing at all) have you checked to see if you can move the stuff with action groups? i can get the ir core to work just no gui. but i can use action groups to actually move the parts. Quote Link to comment Share on other sites More sharing options...
Jasseji Posted November 20, 2018 Share Posted November 20, 2018 For some reason it started working by itself @Trufiadok did you already do some coding in the direction of inchworming or is it a no-go at the moment ? i tried to do it via VEE but obviously the arm doesnt get the reference - what would happen if i move the IKRC Module from the LEE to one of the hinges and install a second LEE w CAM where the "Basic" LEE is ? Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 20, 2018 Author Share Posted November 20, 2018 23 hours ago, Jasseji said: Hey again, is it safe actually to Install the normal Infernal Robotics alongside ? I cant make the normal stuff from IR to work (hinges, gantry etc, the icon isnt showing at all) The difference between the original IR plugin and IRmod is that in the IRmod the servo turns the shortest path to the specified angle position. I will examine how this function can be resolved without IRmod. I changed the code below in the "Interpolator.cs" file. //newVel *= Math.Sign(CmdPosition - Position); // direction // CHANGED BY TRUFIADOK float diffPosition = CmdPosition - Position; // CHANGED BY TRUFIADOK if (diffPosition >= 180f || (diffPosition < 0f && diffPosition >= -180f)) // CHANGED BY TRUFIADOK newVel *= -1f; // CHANGED BY TRUFIADOK I fixed the speed reduction with the end position approaching. if (!IsModulo) { if (Position >= MaxPosition) { // hard limit on Endpositions Position = MaxPosition; Velocity = 0f; } else if (Position <= MinPosition) { Position = MinPosition; Velocity = 0f; } } else { //if (isSpeedMode) // CHANGED BY TRUFIADOK //{ // CHANGED BY TRUFIADOK Position = ReduceModulo(Position); //} // CHANGED BY TRUFIADOK } If you are using the original IR plugin, the servo motor may turn +350 degrees instead of -10 degrees. Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 20, 2018 Author Share Posted November 20, 2018 11 hours ago, Jasseji said: For some reason it started working by itself This can happen when you switch to another vessel. In this case, the world coordinate system changes. I need to fix it so that the plugin is not active at this time. @Trufiadok did you already do some coding in the direction of inchworming or is it a no-go at the moment ? What do you mean by "direction of inchworming"? i tried to do it via VEE but obviously the arm doesnt get the reference - what would happen if i move the IKRC Module from the LEE to one of the hinges and install a second LEE w CAM where the "Basic" LEE is ? VEE can be assigned to a part that has DockingNode. In the current state, the plugin works with only this configuration of robot arm. The order of the servo parts is recorded in the program code. On 11/19/2018 at 7:48 PM, COL.R.Neville said: are you using anything special to 1.3.1 and out? or do we just need to recompile everything for 1.2.2. I use only a modified IR module API. WireSnareLock and Ca2LeeCam are my own modules, but is also work without them. I think it can work with 1.2.2. Quote Link to comment Share on other sites More sharing options...
COL.R.Neville Posted November 20, 2018 Share Posted November 20, 2018 (edited) yeah thats the problem ive run into. i can make things work by using action groups. but havent been able to find a working front end gui. right now using 2.0.10 or v3 3.00 the core part of moving the parts etc works fine but ive tried every combination of gui i could find and even thought about trying to convert everything to using the usi moduleservo but i havent found one that works. one thing i have noticed is that it seems like there is some stream of data that its trying to load i dont know if that is unity itself phoning home or what but i think the links are dead. and all these gui's it seems are using the same thing. dunno most of this is all voodoo to me hehe. just trying to get everything going so i can play ro/rss/rp0 on 1.2.2 but thanks for building stuff like this man. Edited November 20, 2018 by COL.R.Neville Quote Link to comment Share on other sites More sharing options...
Jasseji Posted November 21, 2018 Share Posted November 21, 2018 @Trufiadok Let me rephrase the question: Does your Plugin support inchworming ? i.e. attaching the "LEE wCam" to a target PDGF, then undocking the original mount point (LEE without Cam) and using it as an End Effector to attach to another PDGF, hence "walking" with the arm from one end of the Station to another. I suppose the Plugin would need to know which End Effector is currently attached to a fixed point and switch the direction Like on this video: I tried to do it but the angles keep getting screwed up Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 21, 2018 Author Share Posted November 21, 2018 11 hours ago, Jasseji said: @Trufiadok Let me rephrase the question: Does your Plugin support inchworming ? i.e. attaching the "LEE wCam" to a target PDGF, then undocking the original mount point (LEE without Cam) and using it as an End Effector to attach to another PDGF, hence "walking" with the arm from one end of the Station to another. I suppose the Plugin would need to know which End Effector is currently attached to a fixed point and switch the direction Like on this video: I tried to do it but the angles keep getting screwed up I already understand the question. This mode of operation has not yet been resolved. The use of servos from another direction is the special feature of the IR module. The reason for twisting is that the rotation is made so that the IR module rotates the entire model and then rotates back the standing part of the model. Therefore it doesn't work from the other direction. That is why it is not that easy to solve inchworming. 19 hours ago, COL.R.Neville said: yeah thats the problem ive run into. i can make things work by using action groups. but havent been able to find a working front end gui. What do you mean by the "action group"? Does the IKRC module or IR module GUI do not appear? right now using 2.0.10 or v3 3.00 the core part of moving the parts etc works fine but ive tried every combination of gui i could find and even thought about trying to convert everything to using the usi moduleservo but i havent found one that works. one thing i have noticed is that it seems like there is some stream of data that its trying to load i dont know if that is unity itself phoning home or what but i think the links are dead. and all these gui's it seems are using the same thing. dunno most of this is all voodoo to me hehe. just trying to get everything going so i can play ro/rss/rp0 on 1.2.2 but thanks for building stuff like this man. Quote Link to comment Share on other sites More sharing options...
COL.R.Neville Posted November 21, 2018 Share Posted November 21, 2018 https://wiki.kerbalspaceprogram.com/wiki/Action_group remember im using 1.2.2 for rss/ro/rp0 so yours crashes to the desktop for me right now. but I've not been able to find a working sequencer for the supposed "working" versions of IR. so if I use IRv3 for 1.2.2 the sequencer doesnt work but the core does. so instead of having to give up or try to rewrite the cfg's for the arms to use the USI moduleservo instead of the mumech toggle. I found that you can use action groups instead of a sequencer. same works for IR 2.0.10. Quote Link to comment Share on other sites More sharing options...
Jasseji Posted November 22, 2018 Share Posted November 22, 2018 (edited) 11 hours ago, Trufiadok said: I already understand the question. This mode of operation has not yet been resolved. The use of servos from another direction is the special feature of the IR module. The reason for twisting is that the rotation is made so that the IR module rotates the entire model and then rotates back the standing part of the model. Therefore it doesn't work from the other direction. That is why it is not that easy to solve inchworming. understood, i agrees that it will be difficult to solve. At the moment i am usind another trick - i attached the Canadarm to a small probe core with RCS and reaction wheel and it is attached via a small docking port to the station - i fly the whole assemlbly from one part of the station to another The mod you made works brilliantly, station building is so much more fun now with the proper Shuttle deliveries etc Edit: did you upload the changed "Interpolator.cs" somewhere or do we just have to add it ? Edited November 22, 2018 by Jasseji Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 22, 2018 Author Share Posted November 22, 2018 12 hours ago, Jasseji said: understood, i agrees that it will be difficult to solve. At the moment i am usind another trick - i attached the Canadarm to a small probe core with RCS and reaction wheel and it is attached via a small docking port to the station - i fly the whole assemlbly from one part of the station to another The mod you made works brilliantly, station building is so much more fun now with the proper Shuttle deliveries etc Edit: did you upload the changed "Interpolator.cs" somewhere or do we just have to add it ? I did not disapprove of the implement "inchworming" capability. The realization would be that when the direction of operation is turned, plugin would replace the servos to reverse servos. (rotor->rotorb & rotorb->rotor). Only the difference between the "rotor" and the "rotorb", which is the standing part and which is the rotating part. I uploaded modified InfernalRobotics plugin. Includes changes to the "Interpolator.cs" file. https://github.com/Trufiadok/IKRC-for-Kerbal/blob/master/InfernalRoboticsMod-develop/InfernalRobotics/InfernalRobotics/Command/Interpolator.cs I use a robot satellite to transport the robot arm. This is the TRF-Sphere unit. Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 22, 2018 Author Share Posted November 22, 2018 (edited) 21 hours ago, COL.R.Neville said: https://wiki.kerbalspaceprogram.com/wiki/Action_group remember im using 1.2.2 for rss/ro/rp0 so yours crashes to the desktop for me right now. but I've not been able to find a working sequencer for the supposed "working" versions of IR. so if I use IRv3 for 1.2.2 the sequencer doesnt work but the core does. so instead of having to give up or try to rewrite the cfg's for the arms to use the USI moduleservo instead of the mumech toggle. I found that you can use action groups instead of a sequencer. same works for IR 2.0.10. Did you mean this feature? Or the function doesn't work in flight mode? I also met bug on IRmod plugin. In Flight mode, I can't move servos from the IR toolbar. The best solution would be to use the original IR plugin. My KSP version: 1.5.1.2335 (x64) Could you send me the KSP.log file then the ksp crashes? If you help, i uploaded modified InfernalRobotics plugin to Github. https://github.com/Trufiadok/IKRC-for-Kerbal/tree/master/InfernalRoboticsMod-develop This is the running list of plugins: Hope you find some starting point for debugging. If you need some information, to write. I use the IR plugin API to rotate servos. Edited November 22, 2018 by Trufiadok Quote Link to comment Share on other sites More sharing options...
Cheesecake Posted November 22, 2018 Share Posted November 22, 2018 OK, for me this works. But I have a question: I have a habitation module with a PDGF an a dockingport (port1).The habitation is connected via the PDGF to the robotic arm. next step is docking the habitation module with port1 to the port2 (target) on the spacestation. Marking the port 2 as target isn`t difficult (leftALT) but how can I mark port1 as the actice port so that IKRK can use this port to align instead of the LEE? Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 22, 2018 Author Share Posted November 22, 2018 5 minutes ago, Cheesecake said: OK, for me this works. But I have a question: I have a habitation module with a PDGF an a dockingport (port1).The habitation is connected via the PDGF to the robotic arm. next step is docking the habitation module with port1 to the port2 (target) on the spacestation. Marking the port 2 as target isn`t difficult (leftALT) but how can I mark port1 as the actice port so that IKRK can use this port to align instead of the LEE? Could you send me picture from structure? RobotArm_LEEwCam --> PDGF---(habitation module)---PORT1--> ? <--PORT2---(spacestation) Do you like this connection? I think I understand your question. What you need is the VEE function. Select PORT1 as target (yellow ball) /leftAlt/. Push VEE button on IKRC window. The port1 will be the EndEffector (white ball). Select PORT2 as target (yellow ball). Activate Inverse Kinematics function. Quote Link to comment Share on other sites More sharing options...
Cheesecake Posted November 22, 2018 Share Posted November 22, 2018 (edited) This is my (test) spacestation. I followed your instructions: Select PORT1 as target (yellow ball) /leftAlt/. Done Push VEE button on IKRC window. Done The port1 will be the EndEffector (white ball). Nothing happened, the ball is just yellow Select PORT2 as target (yellow ball). Activate Inverse Kinematics function. Edit: reload the scene and now it works. Edit2: OK, I can do this VEE only one time. After that I can`t rearrange the EndEffector. I must reload the scene. Edited November 22, 2018 by Cheesecake Quote Link to comment Share on other sites More sharing options...
Jasseji Posted November 23, 2018 Share Posted November 23, 2018 (edited) 12 hours ago, Trufiadok said: I did not disapprove of the implement "inchworming" capability. The realization would be that when the direction of operation is turned, plugin would replace the servos to reverse servos. (rotor->rotorb & rotorb->rotor). Only the difference between the "rotor" and the "rotorb", which is the standing part and which is the rotating part. I uploaded modified InfernalRobotics plugin. Includes changes to the "Interpolator.cs" file. https://github.com/Trufiadok/IKRC-for-Kerbal/blob/master/InfernalRoboticsMod-develop/InfernalRobotics/InfernalRobotics/Command/Interpolator.cs I use a robot satellite to transport the robot arm. This is the TRF-Sphere unit. Sorry, i'm braindead at this hour - do we have to rebuild the plugin ? I have these folders in my GameData: Ca2LeeCam Canadarm2 IKRC IkRobotController InfernalRoboticsMod MagicSmokeIndustries WireSnareLock Which folders from your Github should be added actually ? The TRF Sphere is neat, can it be added safely between the "Base" LEE and the first rotating joint ? Actually for RCS stability it might be included behind each LEE of the arm Edit: Another small question: ist there a reason why you disabled Surface attach for the PDGF ? I have edited the cfg myself to enable it and i see no issues - it helps lower the partcount Edited November 23, 2018 by Jasseji Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 23, 2018 Author Share Posted November 23, 2018 (edited) On 11/22/2018 at 9:47 PM, Cheesecake said: This is my (test) spacestation. I followed your instructions: Select PORT1 as target (yellow ball) /leftAlt/. Done Push VEE button on IKRC window. Done The port1 will be the EndEffector (white ball). Nothing happened, the ball is just yellow Select PORT2 as target (yellow ball). Activate Inverse Kinematics function. Edit: reload the scene and now it works. Edit2: OK, I can do this VEE only one time. After that I can`t rearrange the EndEffector. I must reload the scene. I tested the plugin with the Clamp-O-Tron Docking Port. It worked. The Clamp-O-Tron Docking Port can't be the cause of the problem. I've modified the IKRC plugin. I added logging to VEE activation and VEE deactivation. Please, update your IKRC plugin, running VEE test and send me KSP.log. I sent my email address for you. I hope we can read from the log of what the problem might be. Edited November 23, 2018 by Trufiadok I just read Edit, maybe the problem is that if once you set the VEE, you have to reset to the original LEE before you set a new one. Nothing is selected (press leftAlt when cursor doesn't stay on part) and press the "VEE" button. Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 23, 2018 Author Share Posted November 23, 2018 14 hours ago, Jasseji said: Sorry, i'm braindead at this hour - do we have to rebuild the plugin ? Don't. I just uploaded a source of a fully modified IR plugin, which contains the Interpolator.cs - you requested. I have these folders in my GameData: Ca2LeeCam Canadarm2 IKRC IkRobotController InfernalRoboticsMod MagicSmokeIndustries WireSnareLock Which folders from your Github should be added actually ? Only InfernalRoboticsMod The TRF Sphere is neat, can it be added safely between the "Base" LEE and the first rotating joint ? I suppose yes, but the new configuration robot arm must be dumped again. Do I upload the TRF-Spheres part? Actually for RCS stability it might be included behind each LEE of the arm Edit: Another small question: ist there a reason why you disabled Surface attach for the PDGF ? Haven't, I'll fix it, too. I have edited the cfg myself to enable it and i see no issues - it helps lower the partcount Quote Link to comment Share on other sites More sharing options...
Jasseji Posted November 24, 2018 Share Posted November 24, 2018 (edited) 10 hours ago, Trufiadok said: I suppose yes, but the new configuration robot arm must be dumped again. Do I upload the TRF-Spheres part? yes, please, the sphere is very nice, if you could provide the subassembly with the modified config.xml ? the IKRC folder is not needed in GameData ? (us bothering you that much = sign up in Patreon so we can get you a Beer at least :P) I am having a lot of fun building a station with this - even when using CxA's RTAS docking ports which otherwise require a super-alignment to dock. Album: https://imgur.com/gallery/7nJeks4 Teaser: [imgur]7nJeks4[/imgur] Edit: I think you didnt upload the recompiled IR Plugin with the Interpolator.cs - Github still lists InfernalRoboticsMod as modified 2 Months ago Edited November 24, 2018 by Jasseji Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 24, 2018 Author Share Posted November 24, 2018 43 minutes ago, Jasseji said: yes, please, the sphere is very nice, if you could provide the subassembly with the modified config.xml ? TRF_SPHERES (if you could provide the subassembly with the modified config.xml ?) - What do you think? the IKRC folder is not needed in GameData ? Now I understand your question about what the GameData directory should contain. Ca2LeeCam - This is necessary if you want to use a camera on "TRF_CA2_LEE_wCam" part. Canadarm2 - This contains the parts that make up the robot arm. IKRC - Inverse Kinematics Robot Controller plugin - that should be. IkRobotController - This is the source code for the IKRC plugin, which does not have to be. InfernalRoboticsMod - This is the modified InfernalRobotics plugin, that's it. If you use the "MagicSmokeIndustries" directory, you don't have to. InfernalRoboticsMod-develop - This is the source code for the InfernalRoboticsMod plugin, which does not have to be. MagicSmokeIndustries - This is a complete package that contains the modified IR plugin. If you use this, don't use "InfernalRoboticsMod". Pictures - I do not need it. WireSnareLock - This is necessary if you want to use a "WireSnareLock" mechanism on "TRF_CA2_LEE_wCam" part. This is the simulation of the wire lock mechanism with which Lee catches the Pdgf. The WireSnareLock plugin can disable TRF_CA2_LEE_wCam dockingNode and activate the wire-snare device to capture the PDGF. WireSnareLock support a physical connection with the vessel, but don't make logic connection. working animation: https://imgur.com/eCrlpQG (us bothering you that much = sign up in Patreon so we can get you a Beer at least :P) I am having a lot of fun building a station with this - even when using CxA's RTAS docking ports which otherwise require a super-alignment to dock. Album: https://imgur.com/gallery/7nJeks4 Building of space station is moving nicely. Teaser: [imgur]7nJeks4[/imgur] Quote Link to comment Share on other sites More sharing options...
Jasseji Posted November 24, 2018 Share Posted November 24, 2018 yes, i use the WireSnare, it is working Perfectly. much more reliable than trying to dock the stuff together And it's actually working much better with the physical connection instead of logical Quote (if you could provide the subassembly with the modified config.xml ?) - What do you think? I mean, if i modify the Arm and add 2 Spheres between the LEE's and the 1st Joint, what do i need to do to keep the Arm working - it's just enough to make a dump from the GUI ? Dump needs to be done in the "0" Position ? Quote Link to comment Share on other sites More sharing options...
Trufiadok Posted November 24, 2018 Author Share Posted November 24, 2018 26 minutes ago, Jasseji said: yes, i use the WireSnare, it is working Perfectly. much more reliable than trying to dock the stuff together And it's actually working much better with the physical connection instead of logical Note that if you have saved the game, it will not work when it is reloaded. (WireSnare) I mean, if i modify the Arm and add 2 Spheres between the LEE's and the 1st Joint, what do i need to do to keep the Arm working - it's just enough to make a dump from the GUI ? Yes. I'm going to try it too. Dump needs to be done in the "0" Position ? Yes, that's the way it is. I'm going to try it too. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.