Skip to content

Commit 1a466cb

Browse files
authored
Centralize dependencies using rosdep (#123)
* Added summy MoveFromMouth action * Add MoveFromMouth to launch * Added MoveFromMouth to setup.py * Point to ada_feeding top-level README.md * Point to ada_feeding top-level README.md * Point to the top-level ada_feeding README.md * Fixed README links
1 parent c92f2d2 commit 1a466cb

File tree

6 files changed

+40
-24
lines changed

6 files changed

+40
-24
lines changed

README.md

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,6 @@
22

33
This repository contains code for the feeding web app. The app itself is in `feedingwebapp`. ROS nodes used to test the app are in `feeding_web_app_ros2_test`, and messages for those ROS nodes are in `feeding_web_app_ros2_msgs`. Each directory contains its own README.
44

5-
## ROS Dependencies
6-
- [ROS2 Humble](https://docs.ros.org/en/humble/Installation.html)
7-
- [PRL fork of rosbridge_suite](https://github.com/personalrobotics/rosbridge_suite). This fork enables rosbridge_suite to communicate with ROS2 actions.
8-
- [ada_feeding (branch: `ros2-devel`)](https://github.com/personalrobotics/ada_feeding/tree/ros2-devel).
9-
- [web_video_server (branch: `ros2`)](https://github.com/RobotWebTools/web_video_server/tree/ros2)
10-
- Dependency: `ros-humble-async-web-server-cpp`
11-
- Dependency: `ros-humble-vision-opencv`
12-
13-
All these repositories of `feeding_web_interface`, `ada_feeding`, `async_web_server_cpp`, `vision_opencv`, `web_video_server`, and `PRL fork of rosbridge_suite` as mentioned above should be downloaded using `git clone ...` in the "src" folder inside the ROS2 workspace. Please follow the [Ubuntu (Debian) tutorial](https://docs.ros.org/en/humble/Installation/Ubuntu-Install-Debians.html) for ROS2 installation in Ubuntu 22, which will automatically lead to creation of "src" folder in ROS2 workspace. To access hidden `.env` file in Ubuntu to change the debug flag's value, press Ctrl + H in the `feeding_web_interface` folder.
5+
## Setup
6+
7+
See the [`ada_feeding` top-level README for setup instructions](https://github.com/personalrobotics/ada_feeding/blob/ros2-devel/README.md).

feeding_web_app_ros2_test/README.md

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,9 @@
22

33
This directory contains all the ROS2 nodes that are used to test the web app. This includes: (1) dummy nodes that have the same interface as robot nodes, but actually just sleep; and (2) nodes for the "Test ROS" page of the web app, which demonstrates how to use our ROS helper functions.
44

5-
## Dependencies
6-
- [ROS2 Humble](https://docs.ros.org/en/humble/Installation.html)
7-
- Python dependencies:
8-
```
9-
python3 -m pip install numpy pymongo shapely tornado
10-
```
5+
## Setup
6+
7+
See the [`ada_feeding` top-level README for setup instructions](https://github.com/personalrobotics/ada_feeding/blob/ros2-devel/README.md).
118

129
## Usage
1310

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/usr/bin/env python3
2+
from ada_feeding_msgs.action import MoveTo
3+
from feeding_web_app_ros2_test.MoveToDummy import MoveToDummy
4+
import rclpy
5+
from rclpy.executors import MultiThreadedExecutor
6+
7+
8+
def main(args=None):
9+
rclpy.init(args=args)
10+
11+
move_from_mouth = MoveToDummy("MoveFromMouth", MoveTo)
12+
13+
# Use a MultiThreadedExecutor to enable processing goals concurrently
14+
executor = MultiThreadedExecutor()
15+
16+
rclpy.spin(move_from_mouth, executor=executor)
17+
18+
19+
if __name__ == "__main__":
20+
main()

feeding_web_app_ros2_test/launch/feeding_web_app_dummy_nodes_launch.xml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@
4949
<node pkg="feeding_web_app_ros2_test" exec="MoveToStagingConfiguration" name="MoveToStagingConfiguration"/>
5050
<!-- Motion: The MoveToMouth action -->
5151
<node pkg="feeding_web_app_ros2_test" exec="MoveToMouth" name="MoveToMouth"/>
52+
<!-- Motion: The MoveFromMouth action -->
53+
<node pkg="feeding_web_app_ros2_test" exec="MoveFromMouth" name="MoveFromMouth"/>
5254
<!-- Motion: The MoveFromMouthToStagingConfiguration action -->
5355
<node pkg="feeding_web_app_ros2_test" exec="MoveFromMouthToStagingConfiguration" name="MoveFromMouthToStagingConfiguration"/>
5456
<!-- Motion: The MoveFromMouthToAbovePlate action -->
@@ -59,4 +61,4 @@
5961
<node pkg="feeding_web_app_ros2_test" exec="MoveToStowLocation" name="MoveToStowLocation"/>
6062
</group>
6163

62-
</launch>
64+
</launch>

feeding_web_app_ros2_test/setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
"MoveToRestingPosition = feeding_web_app_ros2_test.MoveToRestingPosition:main",
4141
"MoveToStagingConfiguration = feeding_web_app_ros2_test.MoveToStagingConfiguration:main",
4242
"MoveToMouth = feeding_web_app_ros2_test.MoveToMouth:main",
43+
"MoveFromMouth = feeding_web_app_ros2_test.MoveFromMouth:main",
4344
"MoveFromMouthToStagingConfiguration = feeding_web_app_ros2_test.MoveFromMouthToStagingConfiguration:main",
4445
"MoveFromMouthToAbovePlate = feeding_web_app_ros2_test.MoveFromMouthToAbovePlate:main",
4546
"MoveFromMouthToRestingPosition = feeding_web_app_ros2_test.MoveFromMouthToRestingPosition:main",

feedingwebapp/README.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,21 @@
22

33
This directory contains the web app that users use to interact with the robot-assisted feeding system. This readme includes an overview and contribution guidelines, while [TechDocumentation.md](https://github.com/personalrobotics/feeding_web_interface/tree/main/feedingwebapp/TechDocumentation.md) includes more specific documentation of the technical aspects of the app.
44

5+
## Setup
6+
7+
See the [`ada_feeding` top-level README for setup instructions](https://github.com/personalrobotics/ada_feeding/blob/ros2-devel/README.md).
8+
59
## Overview
6-
The overall user flow for this robot can be seen below.
10+
The _nominal_ user flow for this web app can be seen below.
711

8-
![newWebAppWorkflow](https://user-images.githubusercontent.com/26337328/223597500-5e520b7a-eb2b-45ad-b9e8-91fec1bdeba4.jpg)
9-
(Last Updated 2023/03/07)
12+
![Screenshot 2024-02-14 at 8 23 06 PM](https://github.com/personalrobotics/feeding_web_interface/assets/8277986/d944de8b-6d5a-4839-8d1b-1bc4d6f5db70)
13+
(Last Updated 2024/02/14)
14+
15+
<!-- ![newWebAppWorkflow](https://user-images.githubusercontent.com/26337328/223597500-5e520b7a-eb2b-45ad-b9e8-91fec1bdeba4.jpg)
16+
(Last Updated 2023/03/07) -->
1017
<!-- ![Web App State Machine](https://user-images.githubusercontent.com/8277986/191333326-c71a1765-475c-40f6-87da-a79b7c73e0ee.png)
1118
(Last Updated 2022/09/20) -->
1219

13-
## Dependencies
14-
- [Node.js](https://nodejs.org/en/download/package-manager)
15-
- [`serve` must be globally installed](https://create-react-app.dev/docs/deployment/) (ideally with `sudo`): `sudo npm install -g serve`
16-
- [`pm2` must be globally installed](https://pm2.keymetrics.io/docs/usage/quick-start/): `npm install pm2@latest -g`
17-
1820
## Getting Started in Computer
1921

2022
### Installation

0 commit comments

Comments
 (0)