ROS 2 Obstacle avoidance using ultrasonic sensors - sensors

I am working on an obstacle avoidance system using ultrasonic sensors and ROS2 on jetson nano.
I saw HC-SR04 to be compatible with ROS2 but it had some issues on jetson.
Wanted to know if any other sensors recommended? or if HC-SR04 shall be sufficient.

Related

Does .Net Core 3.1 have an event driven method of detecting GPIO pin changes?

I'm creating a .Net Core 3.1 console app to read to and write from GPIO pins on an Orange Pi Zero (similar to a Raspberry Pi Zero). It is running Armbian Focal (Ubuntu). I'm using .Net Core's System.Device.Gpio library.
I have managed to get the reading to and writing from the GPIO pins working - no problem. But the way I am reading the pins is by doing a gpioController.Read() inside a loop. I was wondering if System.Device.Gpio has an event driven method of reading a GPIO pin? In other words, if a pin goes from high to low, or low to high, that an event - let's call it "gpioPinStateChanged" - is triggered. Is there such a thing?
I know I could create my own even notification system, but I was wondering if .Net Core perhaps had something built in? I've looked at a dozen code samples, and none of them have anything like that, so I'm guessing there isn't...
Thanks
Following 0andriy's comments, I saw that you can indeed register events to detect GPIO pin state changes. Thanks to his post, I also found another great post of someone doing the same. He uses GPIO pin change events to calculate the RPM of a fan.
http://blog.timwheeler.io/building-a-pwm-fan-controller-with-dotnet-iot/

camera capture looks different on windows and linux

hey im trying to use a raspberry pi with opencv to prosses some images but while i am capturing the images from the webcam using the same values using windows on my pc and Ubuntu mate on the pi they look very different
linux capture
windows capture
does anyone know why there any difference
It looks like your usb webcam probably has a compatibility problem with the pi (or its drivers in Ubuntu mate).
Try googling the camera model and linux compatibility to see if there are any known tricks to do.
Googling "raspberry pi usb camera compatibility" gives you various lists of known compatible cameras.
In terms of performance (e.g. frame rate) a usb webcam is always worse than the raspberry pi camera attached to the camera serial interface.
To get that working in opencv, you can use this library:
RaspiCam: C++ API for using Raspberry camera with/without OpenCv
www.uco.es/investiga/grupos/ava/node/40

wireless transfer of data from raspberry pi 3 to pc using python

I am doing my master thesis and one of the important things for me is to transfer the recordings of pressure and temperature from a patient simulator to a PC. From the sensors, the information is taken by the raspberry pi3. I am using raspberry pi3 because it has inbuilt wifi option. Now I have to transfer the data from the raspberry pi to the PC wirelessly using python programming. I am new to python and I have absolutely no idea how to do this. Could anyone help me with writing the code so that I could at least send some data from where I could adjust the bit rate and other things according to my requirements?
Take a look at sockets, a simple client - server communication is really easy to do :)
https://wiki.python.org/moin/TcpCommunication

Linux Bluez Bluetooth overload?

I am working with a Raspberry Pi (running Jessie), Bluez, and iBeacons (10 iBeacons). My application (written in Python) sniffs for iBeacons and reports MAC address and RSSI. This is a continuous "sniff". The program can run for hours without any overload; however, after introducing a virtual iBeacon (from an iPhone app), the application seems to "overload" not allowing the application to be able to read the other non-virtual iBeacons forcing me to restart the Pi. Also, the virtual iBeacon is transmitting at MUCH faster rates as compared to the other iBeacons. Regardless, this poses a deployment problem as we cannot afford to have a rogue Bluetooth signal overloading the system.
Is this an issue with Bluez, the USB dongle (Iomega), or something else? Not posting code to the forum- interested in where to start looking for an issue. Not sure where to begin.....
Sorry for the vagueness. Was not sure if the issued was in Linux Bluetooth stack, Raspberry Pi, dongle, or elsewhere.
Switched out the Broadcom dongle with a Cambridge Silicon Radio and have eliminated all errors.
Thanks!

Kinect for Xbox 360 freezes and disconnects from USB after running Processing SimpleOpenNi depth image example

please help
I've been trying to set up kinect for XBOX 360 to run on ubuntu in order to start developing an application to control a humanoid robot. for the past four days I've been searching , downloading , installing and trying dozens of libraries and drivers to get the kinect to work on Ubuntu. in the beginning none was working and I was only able to read the RGB camera with "Camorama" and "guvcview" no matter what library or driver I attempted to run.. Finally, I installed a fresh copy of Ubuntu and installed libfreenect libraries using synaptic (I'm kinda newbie) and I also installed the following packages
https://code.google.com/p/simple-openni/downloads/detail?name=OpenNI_NITE_Installer-Linux64-0.27.zip&can=4&q=
along with Processing 2.0 and SimpleOpenNi-0.27
I start Processing -> examples -> OpenNi -> DepthImage & RUN
and the kinect starts for 3 to 10 seconds giving the image below some times along with the RGB image and some times with out it, then the frame freezes, and when I try listing the USB devices ($lsusb) there is no Kinect camera or audio devices listed, so the Kinect must be unplugged from the Adaptor and USB and then re-inserted and the problem still occur after running the sketch.
Attempted solutions:
1- removing and black listing gspca kernel module
2- disabling USB auto-suspend
but the problem still occur...
I'm using Kinect for XBOX 360 with (12V - 1.08A) USB AC Power Adapter
http://www.walmart.com/ip/INSTEN-USB-AC-Power-Adapter-For-Microsoft-Xbox-360-Kinect-Sensor/28882271
My laptop is : DELL Inspiron.1525 Intel Core2Duo RAM 2GB
Running Ubuntu 14.04.2 LTS ,, Release: 14.04 ,, Codename: trusty
Can any one help me please!!.
I had a similar problem and after I used Kinect With windows, I found that the problem was from the Kinect itself.
The following tips will help you get started using your Kinect:
If a non-Microsoft driver for the Kinect is installed on your computer, the Kinect for Windows drivers might not install or function correctly. To fix this, uninstall the non-Microsoft drivers before installing the Kinect for Windows SDK.
Connect the power supply for the Kinect to an external power source; if the Kinect has only power from the USB connection, it will be minimally functional and light the LED, but it must be connected to an external power source to be fully functional.
No tools are required for calibration of audio and video.
Your Kinect should be the only device plugged into a USB hub on your computer. If you have more than one Kinect, connect them to different USB controllers. If 2 hubs are connected to the same controller, only 1 Kinect can work at a time.
The Kinect is protected from overheating by a fan. It is controlled by the sensor's firmware, which turns off the camera at 90 degrees Celsius. There is no software interface for applications to control the fan.
Reasonable lighting, neither extremely dark nor extremely bright, is important for capturing images with the RGB camera. Incandescent, fluorescent, and natural lighting provide no special obstacles, but do not point an intense or constant light source at the camera because this can blind the RGB sensor.
The depth sensor functions adequately in typical and reduced lighting, although in near darkness there is increased noise in the signal.
The depth sensor reads depth information from reflected light. Objects that are highly reflective (mirrors and shiny metal) or highly absorptive (fluffy and/or dark materials) may not be registered by the depth sensor as successfully as other objects.
for detailed instructions on Setting Up a Kinect Sensor please follow
: https://msdn.microsoft.com/en-us/library/hh855356

Resources