spaceshipyard / mars-rover-node-bridge

Apache License 2.0
1 stars 0 forks source link

Investigate how to integrate V-REP with the node bridge #11

Closed chaos-adept closed 5 years ago

chaos-adept commented 6 years ago

the first attempt to use V-REP has been evaluated, it makes sense to investigate how to integrate v-rep as "a mock" environment for node-bridge.

References:

vnabatov commented 6 years ago

with mock-bridge (npm run start:mock) very easy to send data anyway in any format

vnabatov commented 6 years ago

@vlfors, could you provide an instruction here, please?

vnabatov commented 6 years ago

up

vlfors commented 6 years ago

Hi. Instruction.

Description

Requirements

Python 3.5+

Installation

git clone --recursive https://github.com/spaceshipyard/mars-rover-virtual-bridge

For fast test I saved in project(mars-rover-virtual-bridge/vrep/) remoteApi.dll for Windows x64 If you no use Windows, you must replace it.

copy library from V-REP_PRO_EDU\programming\remoteApiBindings\lib\lib\OS to D:\3d\remoteAPIPython\vrep

python setup.py install

Run

Run the client from https://github.com/spaceshipyard/mars-rover-dispatcher Open V-REP with "test/test2" and start simulation. After it, run:

python mars-rover-virtual-bridge/main.py

chaos-adept commented 6 years ago

@vlfors @vicnbt it seems that in a cause of debugging we need to attach the v-rep to the Arduino node bridge instead of the dispatcher. pilot>dispatcher>v-rep => pilot>dispatcher>bridge>v-rep

in the bridge we might make a johnny-five(five.Board) replacement with the similar interface as we are doing in the unit tests. the Mock five.Board will sends the low level commands to a v-rep robot like rightMotor.forward(rightSpeed) => { cmd:'motor-update', params:{ motor:'right', direction, speed} }

chaos-adept commented 6 years ago

after a short investigation, I have found that five.board might be integrated over IO layer of the five.Board library.

chaos-adept commented 5 years ago

@vnabatov so far, V-Rep doesn't bring real value to the project, in the same time we don't have many resources to continue work in this direction, and we have other more prioritized, I suppose that we might just resolve this task as "wont fix" for keeping issue list clean, if you have any objection then let me know and I will re-open this issue.