Wishlist
- Connection to UsarCommander
- ROS-nodes working for platform, arm, laser scanner and ins.
- Connection to playchess
Started
Labbook 2016.
May 14, 2015
March 29, 2015
- Looking at YouBotBaseKinematicsTest.cpp in youbot_driver.
- The youBot is not visible in the DutchNaoTeam network, also not when connected via wire. Put the Cisco Linksys AE1000 wireless stick into the USB of the yuBot. Connection established. Tried to do an update via the wireless, but the internet connection is lost. Tried to connect directly via wire to the router, but ifconfig does not return any more. Even a restart does not succeeds. Restart fails because the wireless stick does not respond to a kill command. With the stick removed the youBot can shutdown. The wired connection eth1 was still set on manual. Updating 818 packages.
- Could connect to 192.168.1.12.
- Could start roslaunch youbot_driver_ros_interface youbot_driver.launch, but this script seems to start a roscore, which fails on contacting the own server 10.42.*.*. Could not find script that sets ROS_IP to 10.42.*.*, so manually changed it with export ROS_IP=192.168.1.12. Now the script fails on File "/opt/ros/hydro/lib/python2.7/dist-packages/roslaunch/__init__.py", which could be related with the install script running at the background,
- The bashrc-file called catkin_ws/network_settings.sh, which set the ROS_IP to 10.42.0.1. Replaced that with 192.168.1.12.
- The init.py fault was located in aruco_msgs. The package.xml indicates that the package format is version2, which gave a conflict with run_depend entries. Removing the version information solved the issue (or moving the aruco_msgs directory to catkin_ws/tmp).
- Tried to start roslaunch youbot_driver_ros_interface youbot_driver.launch, but the driver complains that no EtherCAT slaves were found. Setting the hasArm to false did not solve the issue.
- Added a protection in youbot_oodl.cpp not try to connect to EtherCAT when no arm is present. Did a catkin_make.
- Still an error, because in InitializeBase does a DoJointCommutation. Also put a protection in YouBotOODLWrapper. Still, receive an error No socket connection on eth0. This error comes from the EthercatMaster in youbot_driver. The EthercatMaster is started with creation of the youBotBase, the DoJointCommutaion only uses this EthercatMaster. Moved my code to catkin_ws/tmp and downloaded fresh code.
- Installed youbot_driver_ros_interface in /opt/ros/hydro, as indicated by ROS_Wrapper documentation.
- Still, running roslaunch youbot_driver_ros_interface/launch/youbot_driver_base.launch fails. Should try with arm connected.
March 19, 2015
March 22, 2015
- Tested Bas' manual succesful up to section 6.2. Made a picture of both positions of 6.2 and 5.4. Also tested section 7 with the position from 6.2.
Test position 6.2 and 5.4
March 21, 2015
- Start working at YoubotChess/Youbot/src/YoubotDH.java.
- Translation for Joint1 are slightly different (115 cm instead of 143cm, 24cm instead of 46cm). For the moment, keep Bas definitions (143,46).
- Bas claims that he follows youbot-store specifications. Numbers are 24,413.5,33,155,135,113.6,57.16. This are not the numbers in Bas code.
- yaw2 is set on 170 deg. At bottom of youbot-store, the orientation between 1 and 2 is given as orientationZYX = “180° 20° 0°” (which is the strange angle on the base). Also note the 40 degrees for Joint4 orientationZYX = “0° 180° 40°”;
- Downloaded inverse-kinematics from the youbot-store (based on Sven Schneider work). This is his thesis. His code seems based on an older version of ros (based on rosmake), although inverse_kinematics is based on cmake. Sven uses this lengths:
// Parameters from youBot URDF file
double l0x = 0.024;
double l0z = 0.096;
double l1x = 0.033;
double l1z = 0.019;
double l2 = 0.155;
double l3 = 0.135;
// Distance from arm_link_4 to arm_link_5
double d = 0.13;
Sven uses this offsets:
offset1 = DEG_TO_RAD( 169.0);
double offset2 = DEG_TO_RAD( 65.0);
double offset3 = DEG_TO_RAD(-146.0);
double offset4 = DEG_TO_RAD( 102.5);
double offset5 = DEG_TO_RAD( 167.5);
- Copied the youbot-manipulation from git to catkin_ws/src. Removed the moveit directory, and performed a catkin_make. Some warnings, but seems to work.
- The repository has several branches, seems that I have loaded the hydro version. It compiles, except the moveit directory. Installing sudo apt-get install ros-hydro-moveit-core solved this. The https://github.com/svenschneider/youbot-manipulation>documentation refers to rosrun moveit_commander moveit_commander_cmdline.py, which first had to be installed. Still warning plugin moveit_rviz_plugin/MotionPlanning not found. Also roslaunch youbot_moveit move_group.launch is missing the plugin.
- sudo apt-get install ros-hydro-moveit-planners-ompl. Before I tried to install several other moveit packages (e.g. ros-hydro-moveit-ros).
- The inverse_kinematics library has no direct commandline interface, but in this package called by the moveit-plugin (GetPositionIK and SearchPositionIK). The function which is called is CartToJnt(), which has parameters a joint-list-init, the required position, joint-list-end. The required position is a KDL::Frame.
- Bas IK can be called by echo "0 0 0.2 1" | java -cp ./jars/Jama-1.0.3.jar:./jars/IK.jar Youbot.MyInverseKinematics, which returns 2.9670597283903604 1.5 -4.01209787718512 0.4164171435615054 2.9234264970905017 0.01 0.01 .
- Continue with making a wrapper around Sven's library, which reads the pose from the command line and outputs the result. Finished it. It cannot find a solution for (0 0 0.2), but it can for (0.2 0.2 0.2)
March 20, 2015
- Trick was to add the topic /scan to the LaserScan. Saved the rviz configuration in IRLyoubot/hokuyo. Couldn't get further, because the power of the UTM-30LX was not connected to the motherboard of the Kuka (which I don´t want to open up now).
- Found the DH parameters for the Schunk PowerCube, DLR Light-weight arm, Kuka lighth0weight arm, the Kr16 and the human arm:
Cognitive Systems Vol 17 appendix.
- This python code contains the DH-parameters for three joints. Yet, seems like normal Euler conventions to me.
- This discussion suggest not use DH at all :-).
- Benjamin Keiser's thesis contains the inertia matrices, but no the DH matrices.
- Sjouke Rinsma's thesis points to this SimPar paper for its model. This model contains equations for the wheels, which seems very usefull for Freddy.
- Dwiputra's kinematic chains starts with the z0-axis down. That makes more sense, although I would expect negative displacements along both the x-axes and z-axis. The transformation from Joint2 to Joint3 seems to be completely OK, the transformation between Joint3 and Joint4 seems to be along the x-axis, not the y-axis. The x-axis of Joint4 is not according to Figure 12 of Dwiputra. Try to add an extra Theta4 of 90 deg. Yet the transformation is now along the y4-axis. Doing for the gripper first the rotation around the x-axis, followed by the rotation over the z-axis points the gripper up. Yet, theta should be around previous z-axis should be applied before the rotation around the new x-axis.
- Magdenburg has put their stop-button on the blue relay, instead of the official location on the motherboard. As a result only the stiffness of the robot is removed.
March 19, 2015
- Trying the trick from askubuntu, to edit the connection (from the icon on top) and select that a IPv4 is required for this connection to complete. No difference, still only a IPv6 adress.
- Problem was that the ethernet cable was connected to EtherCAT. With a screen connected to the youBot, it was clear that a connection was build up for eth1 (eth0 was set as shared to other computers). Set the connection wired fixed to 10.42.0.202 and the wireless on 192.168.202.202. ssh youbot@192.168.202.202.
- When the roscore wants to start on the wired gateway, even when the cable is disconnected.
- Started looking at the repository of the IRL. Started making action_controller_node. Made a copy of git/IRLyoubot/action_controller to catkin_ws/src.
- The Kuka youBot could not be connected to the refereebox, because its wireless stick only supported 2.4 GHz. The Asus 5.8 N550VJ stick was not recognized. Solving this issue was not easy, because the kernel was 3.2.0. The Kuka people themselves used kernel 3.13 (and 3.18 on their laptops).
- Installed the drivers for the 5.8 stick for this kernel by downloading rtl8812AU from github, followed by make and make install. Now the rockin-atwork-cfh-examples/build/peer works.
- The ActionController can now be started with command rosrun action_controller action_controller_node.
- Not complete clear who made this package. Looks a bit like ROS_navigation from youbot-store.
- Continue with the directory hokuyo, but the hokuyo_node is empty. Checked the Tutorial on ros.org. Did sudo apt-get install ros-hydro-hokuyo-node. Pluged in the UTM-30LX, the green and red light goes on. Performed sudo chmod a+rw /dev/ttyACM0 to configure the Hokuyo properly. Roscore was already running. Set the parameters rosparam set hokuyo_node/calibrate_time false and rosparam set hokuyo_node/port /dev/ttyACM0. The command rosrun hokuyo_node hokuyo_node gave the response:
[ INFO] [1426782534.648154215]: Connected to device with ID: H1102815
[ INFO] [1426782534.751204907]: Streaming data.
- Executed command rosrun rviz rviz -d `rospack find hokuyo_node`/hokuyo_test.rviz
- The rviz does not exist, and the vcg is too old. scan topics are published, but not visible although I added Laserscan to the view.
.
March 18, 2015
- First tried the ZyXEL Wireless USB adapter NWD2105 in nb-ros. Works, the command dmesg | tail -40 shows:
[46799.995452] usb 3-2: new high-speed USB device number 4 using xhci_hcd
[46800.028938] usb 3-2: New USB device found, idVendor=0586, idProduct=341e
[46800.028951] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[46800.028957] usb 3-2: Product: 802.11 n WLAN
[46800.028962] usb 3-2: Manufacturer: Ralink
[46800.028966] usb 3-2: SerialNumber: 1.0
[46800.247941] usb 3-2: reset high-speed USB device number 4 using xhci_hcd
[46800.273840] xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled ep ffff880189e5c240
[46800.273853] xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled ep ffff880189e5c200
[46800.273858] xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled ep ffff880189e5c280
[46800.273863] xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled ep ffff880189e5c2c0
[46800.273868] xhci_hcd 0000:00:14.0: xHCI xhci_drop_endpoint called with disabled ep ffff880189e5c300
[46800.274280] ieee80211 phy1: rt2x00_set_rt: Info - RT chipset 3070, rev 0201 detected
[46800.286433] ieee80211 phy1: rt2x00_set_rf: Info - RF chipset 0005 detected
[46800.286890] ieee80211 phy1: Selected rate control algorithm 'minstrel_ht'
[46800.287639] usbcore: registered new interface driver rt2800usb
[46800.317877] ieee80211 phy1: rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'
[46800.318132] ieee80211 phy1: rt2x00lib_request_firmware: Info - Firmware detected - version: 0.29
[46800.571528] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[46800.572213] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
[46847.371008] wlan1: authenticate with dc:9f:db:a6:35:5a
[46847.393831] wlan1: send auth to dc:9f:db:a6:35:5a (try 1/3)
[46847.399286] wlan1: authenticated
[46847.399401] rt2800usb 3-2:1.0 wlan1: disabling HT as WMM/QoS is not supported by the AP
[46847.399404] rt2800usb 3-2:1.0 wlan1: disabling VHT as WMM/QoS is not supported by the AP
[46847.401513] wlan1: associate with dc:9f:db:a6:35:5a (try 1/3)
[46847.428816] wlan1: RX AssocResp from dc:9f:db:a6:35:5a (capab=0x421 status=0 aid=8)
[46847.432446] wlan1: associated
[46847.432517] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
- Could connect the Kuka youBot to nb-udk. Yet, I received ip 169.254.187.181, no idea which adress the Kuka uses. The youBot wiki suggested to use avahi-browse -rt _workstation._tcp. That was already installed on my laptop, but it seems that I only received an IPv6 adress (no IPv4). Installing avahi-tools for cygwin64 on nb-udk.
- Tried to install rockin-refbox. The code did not compile, due to a dependence on boost1.50. This dependence was described in Logistics referee box. Yet, a sudo apt-get update failed due to a expired opensuse key. This key can be made visible by command sudo apt-key --keyring /etc/apt/trusted.gpg list. Removed the key with command sudo apt-key --keyring /etc/apt/trusted.gpg del 704BE528. Still same problem.
- Downloaded Release.key and executed sudo apt-key add /tmp/Release.key. Next I did sudo apt-key update, followed by sudo apt-get update. Still same problem. Found the problematic package in /etc/apt/sources.list.d/missionlabcarmen.list. Now sudo apt-get update works.
- Still the package boost1.50-all-dev is not found. Replaced it with libboost-all-dev and installed all remaining dependencies. Also libyaml-cpp-dev could not be found. Installed instead libyaml-dev which is available for Ubuntu 12.04.
February 18, 2015
- Should install an emergy stop button, as indicated on this page.
- When succesful, I should send the students technical report to Kuka. Deadline September 30.
- Send a question on Tech support of Softkinetic about the Linux support of DepthSense 325 camera.
Previous Labbooks