I'd like to pay your attention also to http://openrave.org/ 
, https://github.com/rdiankov/openrave .

It is mostly C++ with some Python bindings, but there are C bindings for 
C++: 
https://github.com/rdiankov/openrave/blob/master/src/libopenrave/libopenrave_c.cpp
 
,  https://github.com/rdiankov/openrave/tree/master/src/cexamples .

That means functions of the openrave lib can be used within a realtime MK 
component.

If the available C bindings are not enough, then it still pretty easy to 
write your own C bindings:
https://github.com/sirop/openrave/blob/productionC_API/src/libopenrave/libopenrave_c.cpp#L345-L356
 
shows a custom C function which calculates  Jacobian matrix for a % DOF 
roboter in qurternion space.
I used this function then in my realtime component.


On Sunday, April 22, 2018 at 2:13:49 PM UTC+2, Bas de Bruijn wrote:
>
> I'v put this on a new thread so it can be easier to find.
>
> Originating thread:
> https://groups.google.com/forum/m/#!topic/machinekit/oxctaPp4n8Q
>
> On 21 Apr 2018, at 18:21, sliptonic <shopint...@gmail.com <javascript:>> 
> wrote:
>
>
> On Friday, April 20, 2018 at 4:19:36 PM UTC-5, Bas de Bruijn wrote:
>>
>>
>>
>> What do you want to know? It's pretty hard to write something a la 
>> "Here's everything i know".
>>
>> Do you have a (Preferrably non CNC) project in mind? 
>>
>
> A couple years ago I bought a scara bot just to play with.  No serious 
> plans, just a learning platform for things like ROS, FreeCAD robot 
> workbench and machinekit on a deeper level.
> I can now control it like a CNC machine but that's not what I want.  Maybe 
> I want to do something silly like sort coins or pick out blue legos.  
>
>
> Yeah, that Lego sorting problem I know. I've helped with that a few times, 
> but after 2 months all is mixed again and they "can't find" the pieces 
> anymore.
>
> I understand conceptually how ROS works but ROS learning curve is a bitch 
> so getting from concept to actually controlling the robot is going to be a 
> process. 
>
>
> Yes it is.
>
> Now that I can control it in Machinekit like a CNC, how do I start 
> connecting it to ROS? 
>
>
> The stuff I did a few years ago was creating a node which listens to a ROS 
> joint_path_command topic, jointtrajectory message. These segments (point1 
> time1, point2 time2, etc) are put in a HAL ringbuffer.
>
> Then on the HAL side, the ringbuffer samples are read, and interpolated. 
> Which results in a position-cmd per HAL cycle (1ms for example)
>
> So in a nutshell: ROS does planning in non-RT and Machinekit Hal does the 
> playout.
>
> Mind: you still have to take care of initializing your hardware, homing 
> joints etc. ROS doesn't do that. Also creating you robot model urdf and 
> making moveit configurations for that.
>
> What's realistically possible with the current state of machinekit?  
>
>
> Short now: interpolate segments in HAL and use the values further on, with 
> whatever HAL logic/setup you come up with
>
> Later: HAL as a ros_control resource.
>
> My questions are probably newbie which is why I was looking for blogs and 
> examples to study.
>
>
> Apart from the ROS learning curve,
> I think that the big issue is that the legacy cnc documentation is 
> irrelevant for setups that do not use CNC.
> Also, the focus has not been on HAL.
>
> Before I even think of writing stuff i'd like to know what you all want to 
> know. There's been a lot of effort put into making the documentation easier 
> to work with, but that does not mitigate the outdated content.
>
> So updating HAL focused content: what questions would you like to have 
> answered that are not here:
> http://www.machinekit.io/docs/index-HAL/
>
> Then I'll try to come up with some tutorial/steps which we can all 
> discuss. And if the outcome is something sensible I'll put that to the docs.
>
> Here's a link to my blog with a video I made a couple weeks ago:   
> http://sliptonic.com/lenny-the-big-dumb-bot/ 
>
>
> That's a nice sturdy looking robot!
>
> Sorry OP,  I didn't mean to hijack this thread.  Feel free to split it out 
> or I'll start a new thread.
>
>
>

-- 
website: http://www.machinekit.io blog: http://blog.machinekit.io github: 
https://github.com/machinekit
--- 
You received this message because you are subscribed to the Google Groups 
"Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to machinekit+unsubscr...@googlegroups.com.
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.

Reply via email to