Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Connect Process C++ opencv app with BBB codesys

massissam1
2017-01-29
2017-09-04
  • massissam1 - 2017-01-29

    I 'm thinking to use BBB + Codesys to build some Small delta Robot. for pick & place application.
    is there some way to Exchange data from codesys BBB for camera target acquisition of the picks point?

    I thinkng on a C++ package made with OPENCV. that sent to codesys the target pick point.

    I have not seen in codesys BBB te possibility to import Linux C++ libraries / executable.

    Thanks in advance for your support and suggestion

    Massimiliano Rovinelli

     
  • GiorgioT - 2017-02-27

    Hi,
    same question, any clue ???
    Thanks!

     
  • Anonymous - 2017-02-27

    Originally created by: Massimo.Milluzzo

    If you create a codesys library you will be able to import C code.
    I do not know if this is the best solution but it could help.

     
  • massissam1 - 2017-03-05

    Hello
    I'm working using sheared memory from BBB - CODESYS and BBB - OPENCV
    I'm think to standardizzare some class template into OPENCV C++ and some POU template in BBB CODESYS

    I haven't seen the possibility to use C integration in CODESYS for Beaglebone. Heve you seen it?

    Thanks

    BR
    Massimiliano

     
  • kumareasu - 2017-07-07

    Dear Massimiliano,
    I have seen your feedback on product review on "CODESYS Control for BeagleBone SL".
    I would like to build a single axis control & HMI in BBB.
    did you use HMI in your application. If yes how do you acheived it.
    Regards,
    Kumar.E

     
  • massissam1 - 2017-07-13

    Hello Kumar
    I spent a lot of time regarding this topics and done a many benchamrcks, and at the I defined this two possible solution; that depend if the HMI is "high" uman exchange or only for INFO / Visualization.

    1) If HMI is only for info I used a solution with HMI direct in the Beagle where there is the realtime Runtime, (consider that i use a preemt_RT patched kernel). Like 4DSystem screen 7", resistive touch. To have in the Beagle a minimum reactive performance you should set-up a minimal kernel function and especially with many LXDE module disable; Use Chromium as web browser ,QupZilla is lighter in the paper but in practis some time have a lt of delay time, the web application should start at the beginning of the Linux session with the command line ...... "http:\localhost:9090\webvisu.htm" for example.
    The Beagle should be configured in Kiosk-mode for better performances

    2) If HMI is for "high" uman exchange in my opinion you need to use a second different system for HMI, I found good solution using Raspberry PI3 with 10.2" touch captive pannel, total cost under 150€ for the HMI. In this case the Beagle do only the runtime engine, I took out all the module in the beaglebone kernel in the way to save CPU and memory.
    you can connet the beagle direct the RPI by ethernet over USB, and save a pubblic addres, or you can connect beagle to the networ separatelly, I found a good Usb-Network adapter in the way to save the on board network for the ethercat master.
    With this second option we are building a multiaxis CNC press, with position and force controlled. I would like to see how many axis is possible to handle with the run time working in 1ms sampling and HMI 100ms.

    I think I have the first result at the end of September.

    I hope I could help you a little bit

    Best regards
    Massimiliano

     
  • kumareasu - 2017-07-18

    Dear Massimiliano,
    Thanks for your reply...Very much useful. I have few more aspects to discuss...
    1. How many axis you have done with BBB.
    2. Do you have any arrangement for safe shutdown of BBB like UPS .(I have frequent power interupption).
    3. Did you use OPC server in BBB? and read/write the value from your HMI?
    Regards,
    Kumar.E

     
  • massissam1 - 2017-07-19

    Hello Kumar
    1) At the moment 1 hydraulic axis
    2) At the moment due to my time was short, I use Battery under power supply, our company works 24h/day 7days on week => never shut down til now the "uptime" command give me 104dd.
    3) Not at the moment I use webVisu, I'm testing some comunication with shear memory and C++ app, but at the moment have priority two. Is the OPCserver aviable for Beagle?

    Best regards

    Massimiliano

     
  • josepmariarams - 2017-08-05

    Hi.

    How much jitter is in Bbb with preemt kernel?

    Thanks

     
  • josepmariarams - 2017-08-14

    Hi Massimiliano.

    I am interested in your real time tests with BBB.

    I am developing a wrapper over an opc sdk client and I have developed an hydraulic control system based in the pump speed which can works i 4 quadrants.

    If you like we can interchange experiences.

     
  • kumareasu - 2017-08-31

    Dear Massimiliano,
    I am searching for USB to Ethernet converter which can work with BBB(loaded with Debian ). I am not able locate one, any idea from your experiance.
    Because I want to use another BBB or RPI for HMI, the connection through ethernet.
    regards,
    Kumar.E

     
  • massissam1 - 2017-09-03

    Hello Josep

    I used rt-test benchamrk at first and latency test on 10 proces with RT request, after 2-3 days contiunous running have a max value of 150us.

    In the codesys task analisys tools, it depends about how you configure the tasks.
    jitter from 20us to 100us

    BR
    Massimiliano

    IMG: BBB

     
  • massissam1 - 2017-09-03

    Hello Kumar
    I use the attached one. It has ethernet to USB and 3 additional USB ports.
    It works only in USB 2.0 with BBB
    It seem that debiam recongnize it without any strange update, and it works with Preempt-rt also.

    BR
    Massimiliano Rovinelli

    IMG: BBB

     
  • massissam1 - 2017-09-03

    Hello Josep
    very interesting application, it could be interesting to exchange experience but for what I see you are in front of me.
    At the moment my HMI is in second priority and also the possibility to use OPC sdk.
    At the moment I have seen the possiblity to use OPC server in BBB, but never done a test. Do you know where is possible to find client server examples?

    Regarding my hydraulic application.
    At the moment I'm concentrate to the trajectory generator.
    I'm using linear segment profile for the trajectory, with some smuthing function in the change of the speed.
    regarding PID, or better PI + feedforward, I used a modifyed OSCAT implementation.
    modified becouse I need to consider the actual force of the hydraulic axis, and I need two switch from position to force control in some condition.

    The power source it works in two pressure with accumulators, low pressure , and high pressure.
    The HPU is an indipendent systems not connected with the press.
    The pumps/motors only have the task to maintain the two level of pressure in the specification.

    The machine switch in high pressure in some situation and back in low pressure in other situation.

    If you think that this kind of application is similar to yours I think we can exchange info and experiences.

    BR

    Massimiliano

     
  • josepmariarams - 2017-09-04

    Hi Massimiliano.

    I have a polinomical trajectory generator working like plcopen motion.

    In hydraulic system, my system goal is to not use proporttional valves. I have tested it with good results in position control but witth small pumps (13cc/rev) and 100 bar.

     
  • massissam1 - 2017-09-04

    Hello Josep
    I think I have understood a little bit your systems, you use a "direct transfer model"
    cylinder + high presure pump(fix displacement) + Servomotor?

    I have studies this systems instead the conventional (powerunit + ServoValve + Cylinder).
    I found very high efficency in power consumtion, but I have not sufficent confident for this project.
    and also economical side in term of investment I have seen not really ceaper in comparison to the conventional systems.
    So I decided to do the current project in normal way.

    In Any case stay in contact!!

    Best regards
    Massimiliano Rovinelli

     

Log in to post a comment.