|
1 | 1 |
|
2 | 2 | ## Using this package
|
3 | 3 |
|
4 |
| -### Adding trees |
5 |
| -All trees should be defined by their origin namespace, the tree type, and the tree id. Tree ids should be zero-padded by 5 spaces. |
6 |
| - |
| 4 | +### Installation |
| 5 | +1. Clone this repository into your local directory: |
7 | 6 | ```
|
8 |
| -# Pattern: |
9 |
| -{tree_namespace}_{tree_type}_{tree_id} |
10 |
| -
|
11 |
| -# Examples: |
12 |
| -LPy_envy_00027 |
13 |
| -prosser_ufo_00762 |
| 7 | +git clone [email protected]:OSUrobotics/pybullet-tree-sim.git |
14 | 8 | ```
|
| 9 | +2. Create a virtual environment. Python's `venv` is encouraged: |
| 10 | +``` |
| 11 | +python3 -m venv venv |
| 12 | +source venv/bin/activate |
| 13 | +``` |
| 14 | +Windows users should activate using the Windows-specific venv scripts. |
15 | 15 |
|
16 |
| -Trees should include a generic mesh and and a labeled mesh. LPy trees can be generated `TODO: TALK TO ABHINAV` |
17 |
| - |
18 |
| - |
19 |
| -## TODO: |
20 |
| -Look up Cantera |
21 |
| - |
22 |
| -urdf generic launch CLI test: |
23 |
| -`xacro robot.urdf.xacro > test.urdf end_effector_type:=mock_pruner eef_parent:=ur5e__tool0 arm_type:=ur5 ur_type:=ur5e tf_prefix:=ur5e__ base_attachment_type:=linear_slider` |
24 |
| - |
25 |
| -## TODO |
26 |
| -1. Figure out better sensor -> camera -> ToF inheritance (ask Cindy) |
27 |
| -1. Tree/robot/env interaction |
28 |
| -1. For Claire: |
29 |
| - 1. Figure out best way to manage tree/robot/environment interaction. I removed robot from penv, but self.trees still exists. |
30 |
| - 1. Fill out the `object_loader.py` class. Activate/deactivate trees, supports, robots. |
31 |
| - 1. Find the `TODO`s in all the code. Ask Luke what they meana and discuss solutions. |
32 |
| -1. Format the final approach controller as a python subpackage? |
33 |
| - 1. https://packaging.python.org/en/latest/guides/packaging-namespace-packages/#packaging-namespace-packages |
34 |
| -1. Add basic cylinder to world. Dynamically create URDF. |
35 |
| -1. Dynamically populate UR URDF. Allow for various end-effectors and robot configurations. |
36 |
| - 1. Make sure to include camera and other sensors. (Source manifold mesh -- utils -> camera class (C++)) |
37 |
| - 1. Dynamic parent joint for Panda to slider/farm-ng (like UR5) |
38 |
| -1. Add generic robot class (from Abhinav's code) |
39 |
| - 1. Panda/UR5 |
40 |
| - 1. End-effector |
41 |
| -1. Make mini orchard from a set of URDFs |
42 |
| - 1. Space out like normal orchard |
43 |
| - 1. Be aware of memory issues in PyB |
44 |
| -1. Change pkl files to hdf5. (lower priority) -- Ask Abhinav for code |
45 |
| -1. Test |
46 |
| - 1. Various tof configurations |
47 |
| - |
48 |
| -## Installation |
49 |
| - |
50 |
| -#### Requirements |
51 |
| -ur, linear_slider, franka-emika |
52 |
| - |
53 |
| -#### General use |
| 16 | +3. Install using pip: |
54 | 17 | ```
|
55 |
| -python -m pip install . |
| 18 | +python3 -m pip install --upgrade pip |
| 19 | +pip install . |
56 | 20 | ```
|
57 | 21 |
|
58 |
| -#### Development |
| 22 | +4. Download the required mesh files from Zenodo |
| 23 | +If successfully installed, a CLI arg `mesh_downloader` should now be active in your environment. |
59 | 24 | ```
|
60 |
| -python -m pip install -e. |
| 25 | +mesh_downloader |
61 | 26 | ```
|
| 27 | +This command will extract the zip file for you. It is a large file and will take several minutes. |
62 | 28 |
|
| 29 | +### Adding trees |
| 30 | +All trees should be defined by their origin namespace, the tree type, and the tree id. Tree ids should be zero-padded by 5 spaces. |
63 | 31 |
|
64 |
| -### Useful RegEx commands... |
65 |
| -For replacing .mtl file paths |
66 | 32 | ```
|
67 |
| -From: ([a-zA-Z0-9_]*).mtl\n |
68 |
| -To: ../mtl/$1.mtl\n |
| 33 | +# Pattern: |
| 34 | +{tree_namespace}_{tree_type}_{tree_id} |
69 | 35 |
|
| 36 | +# Examples: |
| 37 | +LPy_envy_00027 |
| 38 | +prosser_ufo_00762 |
70 | 39 | ```
|
| 40 | + |
| 41 | +Trees should include a generic mesh and and a labeled mesh. LPy trees can be generated by `TODO: TALK TO ABHINAV` and added to the Zenodo storage. |
| 42 | + |
0 commit comments