Издатель Ros не работает с V-Rep после сохранения

Я начал использовать V-Rep для моделирования некоторых роботов (пионеров и квадрокоптеров, изначально), но у меня возникли проблемы, когда я пытался подключить его к ROS. Я попытался воспроизвести пример из RosTopicPublisherAndSubscriber.ttt, и он работает только в первый раз, после того, как я закрываю его и загружаю снова, он больше не работает, мой код практически идентичен примеру, за исключением того, что я использую getPose, и он Pioneer (тот, что идет в комплекте с V-Rep), вот мой код:

if (simGetScriptExecutionCount()==0) then

    -- Check if the required plugin is there (libv_repExtRos.so or libv_repExtRos.dylib):
    local moduleName=0
    local moduleVersion=0
    local index=0
    local pluginNotFound=true
    while moduleName do
        moduleName,moduleVersion=simGetModuleName(index)
        if (moduleName=='Ros') then
            pluginNotFound=false
        end
        index=index+1
    end

    if (pluginNotFound) then

        simDisplayDialog('Error','ROS plugin was not found.&&nSimulation will not run properly',sim_dlgstyle_ok,false,nil,{0.8,0,0,0,0,0},{0.5,0,0,1,1,1})
    else

        -- Retrive the handle of the vision sensor we wish to stream:
        lHandle=simGetObjectHandle('Pioneer_p3dx')

        -- Now enable topic publishing and streaming of the vision sensor's data:
        topicName=simExtROS_enablePublisher('p3dx',1,simros_strmcmd_get_object_pose,lHandle,0,'')
        if (topicName == nil) then
            simDisplayDialog('Error','Nil',sim_dlgstyle_ok,false,nil,{0.8,0,0,0,0,0},{0.5,0,0,1,1,1})
        else
            simDisplayDialog('Error','Not Nil',sim_dlgstyle_ok,false,nil,{0.8,0,0,0,0,0},{0.5,0,0,1,1,1})
        end
        -- Retrive the handle of the passive vision sensor. We will use the passive vision sensor

    end
end

Любая идея приветствуется! Заранее спасибо! PS: Кроме того, если бы кто-нибудь с 1500 очками репутации мог создать тег v-rep, это было бы здорово!


person Guiga    schedule 11.08.2014    source источник
comment
форумы V-REP на данный момент могут быть лучшим местом для размещения вашего вопроса.   -  person Brent    schedule 07.10.2014
comment
Да, я тоже это сделал, я просто пытался сначала увидеть, где я получу ответ, но потом совершенно забыл об этом. Я уже решил это, поэтому просто опубликую здесь и закрою этот вопрос   -  person Guiga    schedule 08.10.2014


Ответы (1)


Хорошо, люди из V-REP помогли мне решить эту проблему. Поэтому в основном я должен использовать аргумент как -1 вместо 0.

Так что, по сути, нужно было это сделать

topicName=simExtROS_enablePublisher('p3dx',1,simros_strmcmd_get_object_pose,lHandle,-1,'')

вместо

topicName=simExtROS_enablePublisher('p3dx',1,simros_strmcmd_get_object_pose,lHandle,0,'')
person Guiga    schedule 08.10.2014