Removed ~ files

This commit is contained in:
Glen Turner
2015-07-01 12:17:18 -07:00
parent 4fea9b0a04
commit 6b9cb70fc1
7 changed files with 1 additions and 113 deletions

View File

@@ -1,48 +0,0 @@
# Asctec Pelican GUI
The purpose of this project is an example of how to write a web page that can be accessed by any device on the same network as the host computer by accessing the IP of that host computer.
### Quick Start Guide
If you are connecting to a remote computer that is running the roscore, you need to run the following lines in the terminal:
sudo route add 192.168.2.1 gw <Host computer IP>
export ROS_MASTER_URI=http://<Host computer IP>:11311
export ROS_IP=<your IP>
Make sure you have the web_video_server installed:
sudo apt-get install ros-indigo-web-video-server
Make sure you have ROSBridge installed:
sudo apt-get install ros-indigo-rosbridge-suite
Then run the bash file in the working directory by running the following in the terminal.
bash launch.bash
#### Just display the webpage
If you just want to test the webpage, navigate to the working directory in the terminal and type
python -m SimpleHTTPServer
Then open http://localhost:8000/.
# Making Changes
Feel free to clone this project and use it as a base for your own GUI.
You can easily customise the "Robot Display" pannel by changing the HTML "robot\_display.html" file.
All ROS related Javascript should go in the "ProjectFiles/js/ros_scripts.js" file.
All functions that are used to update the GUI should go in the "ProjectFiles/js/update_guis.js" file
By using ROSBridge, this GUI will attempt to display relevant information over the web for any device.
TODO:
1. Display Network Information
1. Add checkmarks for which topics you want to record
2. Add time plot for data
1. fix connectoin button on ROS Bridge Connection tab

View File

@@ -9,4 +9,4 @@ Array.prototype.indexOfTopic = function(name) {
if (this[i].name == name)
return i;
return -1;
}
}

Binary file not shown.

View File

@@ -1,27 +0,0 @@
#!/bin/bash
kill_child_processes() {
isTopmost=$1
curPid=$2
childPids=`ps -o pid --no-headers --ppid ${curPid}`
for childPid in $childPids
do
kill_child_processes 0 $childPid
done
if [ $isTopmost -eq 0 ]; then
kill -9 $curPid 2> /dev/null
fi
}
# Ctrl-C trap. Catches INT signal
trap "kill_child_processes 1 $$; exit 0" INT
chmod a+x src/bagger.py
x-terminal-emulator -e "roslaunch rosbridge_gui_example all.launch" &
x-terminal-emulator -e "python -m SimpleHTTPServer 8000" &
x-terminal-emulator -e "rostopic echo /bag_notifier" &
x-terminal-emulator -e "rosrun web_video_server web_video_server"

View File

@@ -1,5 +0,0 @@
<launch>
<include file="$(find rosbridge_server)/launch/rosbridge_websocket.launch" />
<include file="$(find rosbridge_gui_example)/launch/bagger.launch" />
<include file="$(find rosbridge_gui_example)/launch/talker.launch" />
</launch>

View File

@@ -1,32 +0,0 @@
#!/usr/bin/env python
import rospy
from std_msgs.msg import String
import rospkg
import subprocess
import os
import signal
class Bagger(object):
def __init__(self):
rospy.init_node("bagger", anonymous=True)
rospy.Subscriber("bag_publisher", String, self.callback)
self.pub = rospy.Publisher("bag_notifier", String, queue_size=10)
self.proc = None
rospack = rospkg.RosPack()
self.data_path = os.path.join(rospack.get_path("rosbridge_gui_example"), "data")
def callback(self, msg):
if msg.data == "STOP" and self.proc is not None:
os.killpg(self.proc.pid, signal.SIGINT)
self.pub.publish("STOPPED")
else:
bag_file = os.path.join(self.data_path, msg.data)
self.proc = subprocess.Popen(["rosbag", "record", "-o", bag_file], preexec_fn=os.setsid)
self.pub.publish(["rosbag", "record", "-o", bag_file])
self.pub.publish("STARTED")
if __name__ == '__main__':
Bagger()
rospy.spin()

View File