Giter Site home page Giter Site logo

kobuki_core's Introduction

kobuki_core's People

Contributors

bit-pirate avatar corot avatar jakan2 avatar jihoonl avatar mdhorn avatar meyerj avatar mskim8717 avatar nikolausdemmel avatar stonier avatar vrabaud avatar woshidag avatar yhju avatar zklapow avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kobuki_core's Issues

Cliff Sensor Modifications

Conversion

Currently Kobuki outputs a human-_un_friendly measurement for the distance to the floor in case a cliff is detected (see kobuki_msgs/CliffEvent -> bottom).

The current output is the A/D-value of the sensor (Integer, 0 - 4095) and doesn't allow the users to related to an actual distance (e.g. in meters).

I suggest we add a conversion to the driver to output the mesured distance in meter.

Threshold

Currently thresholded at 8cm in firmware, too much for turtlebot. 4cm better.

Doxygen link returns 404

Hi there,

I'm planning to program for Kobuki robot without using ROS. The link to official Doxygen documentation is broken. Could somebody try to fix it please? Thanks!

can't create /dev/ttyUSB0 in firefly RK3288 Ubuntu image

Dear all,

I'm working on porting Turtlebot into firefly RK3288 Ubuntu, and already completed installation of Ros/Turtlebot/udev_rule, but it failed running turtulebot_bringup because ubuntu couldn't connect kobuki.

After plug-in kobuki, the console shows:
firefly@firefly:~$ dmesg
[ 5934.956337] usb 3-1.3: new full-speed USB device number 11 using usb20_host
[ 5935.068207] usb 3-1.3: New USB device found, idVendor=0403, idProduct=6001
[ 5935.068369] usb 3-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 5935.068479] usb 3-1.3: Product: iClebo Kobuki
[ 5935.068557] usb 3-1.3: Manufacturer: Yujin Robot
[ 5935.068729] usb 3-1.3: SerialNumber: kobuki_AL026ZR6

there is no /dev/ttyUSB0 or something else.
is that the ubuntu doesn't have USB-RS232 converter driver? maybe I need to recompile a new kernel image?
Thanks

BR
Tommy

Getting input from external IMU

ecl::Angle<double> Kobuki::getHeading() const

double Kobuki::getAngularVelocity() const

I have an external IMU and want to publish it to ros as a replacement for the current imu on turtlebot2.
I am just wondering on how the calculations are made for these two functions or rather on "Inertial Sensor Data" from kobuki protocol specifications.

btw, i have both acceleration and gyro datas. i just need the formula for the Angle and Angle Rate.

fatal error: ftdi.h: No such file or directory

When trying to compile using catkin_make_isolated I get this error:

fatal error: ftdi.h: No such file or directory

In these diferent files:

  • /kobuki_core/kobuki_ftdi/src/ftdi_write_eeprom.cpp:44:18
  • /kobuki_core/kobuki_ftdi/src/ftdi_read_eeprom.cpp:45:18
  • /kobuki_core/kobuki_ftdi/src/ftdi_scan.cpp:43:18
  • /kobuki_core/kobuki_ftdi/src/../include/kobuki_ftdi/writer.hpp:42:18

I'm using indigo branch.

Firmware Deb

This would:

  • Put the firmware blob for a particular version of the firmware on the pc.
  • Provide a tool that lets you download.
  • Another tool that lets you check the robot's version against your pc version and suggest
    an upgrade if possible.
  • Write kobuki driver to check robot firmware and firmware on the pc and provide information/warning if they're different.
  • Probably also the udev rule.

We can sort of do this with ros debs, but key problem is that you can't install to ubuntu system directories (conflicts from one version of ros to the next). So udev rules don't work. And whatever version of the blob would be directly tied to the software and the user couldn't choose the firmware they wanted to use (hey, that's not such a bad idea). Options:

  • Build a kobuki_firmware ros deb package
  • Lean on Bill's launchpad to make an ubuntu deb
  • Learn how to use launchpad ourselves to make official debs

Linear Speed/Turn Radius Driver Api

The diff_drive module in the pure c++ driver allows one to control the robot using linear speed (mm/s) and turn radius (mm) just like the irobot create. However this method is not available via the Kobuki class, instead one with linear speed and angular speed is used. As the diff_drive is a private member, it is not possible to use this interface.

This is very useful for apps that previously used the irobot create. Sure you can easily calculate angular speed from turn radius, but it would be nice to expose it.

Kobuki 'no data stream, is kobuki turned on?' warning

Hi. I am trying to control Kobuki using Apalis T30 board running tegra-linux (modified Ubuntu 12.04 precise). I am experiencing some difficulties for which I was hoping I can get help.

The usb port that the Kobuki is connected to is of the form /dev/usbdevxx, which I specify in the kobuki_node/param/base.yaml file.

So after running roslaunch kobuki_node minimal.launch, I get the following output:

[ INFO] [1476532730.366343253]: Loading nodelet /mobile_base of type kobuki_node/KobukiNodelet to manager mobile_base_nodelet_manager with the following remappings:
[ INFO] [1476532730.366834253]: /mobile_base/joint_states -> /joint_states
[ INFO] [1476532730.367049253]: /mobile_base/odom -> /odom
process[diagnostic_aggregator-4]: started with pid [1350]
[ WARN] [1476532730.860578253]: Kobuki : no robot description given on the parameter server
[ INFO] [1476532730.861149253]: Kobuki : configured for connection on device_port /dev/usbdev1.3 [/mobile_base].
[ INFO] [1476532730.861359253]: Kobuki : driver running in normal (non-simulation) mode [/mobile_base].
[ INFO] [1476532730.869143253]: Kobuki : Velocity commands timeout: 0.600000000 seconds [/mobile_base].
[ INFO] [1476532730.873516252]: Kobuki : using odom_frame [odom][/mobile_base].
[ INFO] [1476532730.877992253]: Kobuki : using base_frame [base_footprint][/mobile_base].
[ INFO] [1476532730.882106253]: Kobuki : publishing transforms [/mobile_base].
[ INFO] [1476532730.886141252]: Kobuki : using imu data for heading [/mobile_base].
[ WARN] [1476532731.151980253]: Kobuki : no data stream, is kobuki turned on?
[ INFO] [1476532731.152723253]: Kobuki : initialised.

And subscribing to topics, or publishing to command topics does not do anything. When the Kobuki is connected to a PC it works properly.

I will post the output of commands as per: http://rosindex.github.io/p/kobuki_ftdi/ in case it is helpful:

cat /dev/kobuki

No /dev/kobuki, but I guess specifying the port explicitly in the base.yaml should work.

lsusb

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
Bus 002 Device 002: ID 8087:07dc Intel Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

sudo ./get_serial_number

1 device(s) found.
Device #0
Manufacturer : Yujin Robot
Product : iClebo Kobuki
Serial Number: kobuki_kobuki_AH02IGKG

Also worth mentioning is that since it is a modified Ubuntu 12.04 system, ROS Hydro is being used. Any help would be appreciated.

CMake version warnings in melodic, noetic

CMake Warning (dev) at CMakeLists.txt:2 (project):
  Policy CMP0048 is not set: project() command manages VERSION variables.
  Run "cmake --help-policy CMP0048" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The following variable(s) would be set to empty:

    CMAKE_PROJECT_VERSION
    CMAKE_PROJECT_VERSION_MAJOR
    CMAKE_PROJECT_VERSION_MINOR
    CMAKE_PROJECT_VERSION_PATCH
This warning is for project developers.  Use -Wno-dev to suppress it.

Fix discussed at https://answers.ros.org/question/361001/how-to-fix-unstable-build-on-buildfarm-for-noetic-because-of-cmp0048/

Custom sounds

Users can make custom sounds with kobuki

Firmware is almost ready, but quality is not measured.

Additional 3d Gyro Features

  1. Sending 3d gyro data separately in 100 Hz
    • Not 50 Hz with core sensor data
  2. Resending corrupted data during communication
    • Firmware side is ready

Autodocking crashes when bot rolls back off dock after autodocking

mobile_base_nodelet_manager dies when the robot rolls back off the dock after autodocking.

[mobile_base_nodelet_manager-8] process has died [pid 13229, exit code -11, cmd /opt/ros/kinetic/lib/nodelet/nodelet manager __name:=mobile_base_nodelet_manager __log:=/home/sr3/.ros/log/365b575e-cbd1-11e7-953f-00c2c6bfc831/mobile_base_nodelet_manager-8.log].

Derefencing errors on the build farm

http://build.ros2.org/view/Ebin_uB64/job/Ebin_uB64__kobuki_driver__ubuntu_bionic_amd64__binary/1/console

DROS_PACKAGE_NAME=\"kobuki_driver\" -Dkobuki_driver_EXPORTS -I/tmp/binarydeb/ros-eloquent-kobuki-driver-0.8.0/include -isystem /opt/ros/eloquent/include -isystem /usr/include/eigen3  -g -O2 -fdebug-prefix-map=/tmp/binarydeb/ros-eloquent-kobuki-driver-0.8.0=. -fstack-protector-strong -Wformat -Werror=format-security -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC   -Wall -Wextra -Werror -Wpedantic -std=c++14 -o CMakeFiles/kobuki_driver.dir/battery.cpp.o -c /tmp/binarydeb/ros-eloquent-kobuki-driver-0.8.0/src/driver/battery.cpp
12:21:32 In file included from /tmp/binarydeb/ros-eloquent-kobuki-driver-0.8.0/src/driver/../../include/kobuki_driver/modules/../packets/core_sensors.hpp:20:0,
12:21:32                  from /tmp/binarydeb/ros-eloquent-kobuki-driver-0.8.0/src/driver/../../include/kobuki_driver/modules/battery.hpp:21,
12:21:32                  from /tmp/binarydeb/ros-eloquent-kobuki-driver-0.8.0/src/driver/battery.cpp:14:
12:21:32 /tmp/binarydeb/ros-eloquent-kobuki-driver-0.8.0/src/driver/../../include/kobuki_driver/modules/../packets/../packet_handler/payload_base.hpp: In member function ‘void packet_handler::payloadBase::buildVariable(T&, ecl::PushAndPop<unsigned char>&) [with T = float]’:
12:21:32 /tmp/binarydeb/ros-eloquent-kobuki-driver-0.8.0/src/driver/../../include/kobuki_driver/modules/../packets/../packet_handler/payload_base.hpp:126:36: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
12:21:32      V = reinterpret_cast<float&>(ui);
12:21:32                                     ^

slot_stream_data.connect ("/ kobuki / stream_data") sigslot connection failure

Very anxious a problem, I have been debugging for a long time has not been resolved, hoping to get help.
Call slot_stream_data.connect ("/ kobuki / stream_data") in simple_loop.cpp; there is a problem with sigslot connection failure.
Name: / kobuki / stream_data
# Subscribers: 1
# Publishers: 0
Correct should be:
Name: / kobuki / stream_data
# Subscribers: 1
# Publishers: 1
I do not know where there is a problem, ask for help, thank you, thank you

Remove sound that plays when using driver

I am currently using the Kobuki Core driver (hydro branch) and I am wondering if it is possible to remove the sound that plays whenever the driver is launched (or stopped) on the robot.

Thank you.

bool PacketFinderBase::waitForPayloadAndEtx(const unsigned char * incoming, unsigned int numberOfIncoming, bool & foundPacket)

I thank function waitForPayloadAndEtx need modify as below:

int j = 0;
for (unsigned int i = (size_stx + size_length_field + size_payload + size_checksum_field);
    i < (size_stx + size_length_field + size_payload + size_checksum_field + size_etx); i++)
{
  if(verbose)
  {
    printf("buffer[%d] =%02x  ETX[%d]=%02x\n", i, buffer[i], j, ETX[j]);
  }
  if (buffer[i] != ETX[j])
  {
    foundPacket = false;
  }
  j++;
}

about the inertia angle

@stonier The angle is a 16bits signed data in hundredths of a degree, it seems like it can only range from -327.68 to 327.67 degree.So if the true angle is 330.00 degree, how it works? Or I misunderstand it?

Can we remove catkin_whitelist?

As this stack only contains non-ros C++, we can skip this step in the installation.
Also review the installation documentation, if not done still.

kobuki_ftdi is failing to build in Kinetic

http://build.ros.org/view/Kbin_uW64/job/Kbin_uW64__kobuki_ftdi__ubuntu_wily_amd64__binary/

CMake Error at /usr/share/cmake-3.2/Modules/FindPkgConfig.cmake:552 (message):
  None of the required 'libusb' found
Call Stack (most recent call first):
  CMakeLists.txt:7 (pkg_search_module)


-- checking for one of the modules 'libftdi'
CMake Error at /usr/share/cmake-3.2/Modules/FindPkgConfig.cmake:552 (message):
  None of the required 'libftdi' found
Call Stack (most recent call first):
  CMakeLists.txt:8 (pkg_search_module)


CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkin_package.cmake:166 (message):
  catkin_package() DEPENDS on 'libusb' but neither 'libusb_INCLUDE_DIRS' nor
  'libusb_LIBRARIES' is defined.
Call Stack (most recent call first):
  /opt/ros/kinetic/share/catkin/cmake/catkin_package.cmake:102 (_catkin_package)
  CMakeLists.txt:10 (catkin_package)


CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkin_package.cmake:166 (message):
  catkin_package() DEPENDS on 'libftdi' but neither 'libftdi_INCLUDE_DIRS'
  nor 'libftdi_LIBRARIES' is defined.
Call Stack (most recent call first):
  /opt/ros/kinetic/share/catkin/cmake/catkin_package.cmake:102 (_catkin_package)
  CMakeLists.txt:10 (catkin_package)


-- Configuring incomplete, errors occurred!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.