openreroc_motion_sensor repository

Repository Summary

Checkout URI https://github.com/Kumikomi/openreroc_motion_sensor.git
VCS Type git
VCS Version master
Last Updated 2018-05-23
Dev Status UNMAINTAINED
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

Name Version
openreroc_motion_sensor 0.1.0

README

openreroc_motion_sensor

OpenReroc (Open Reconfigurable Robot Component) is a project to build an open source platform of reconfigurable (i.e. FPGA) devices for robot components.
This package supports ultra sonic sensor an FPGA board (ZedBoard Xilinx). openreroc_motion_sensor publishes sensor data to the topic.

Git: https://github.com/Kumikomi/openreroc_motion_sensor
Author: Kazushi Yamashina (Utsunomiya University)
Copyright: 2015, Kazushi Yamashina, Utsunomiya University
License: new BSD License
Latest Version: 0.1.0

Directry tree

openreroc_motion_sensor 
|-include/ 
|-msg/ 
|-hardware
    |-src/
    |-image/
|-src/ 
|-CMakeLists.txt 
|-package.xml  
|-LICENSE.txt

Requirements

Platform for ROS system

  • ZedBoard
  • xillinux-1.3c
    • Xillinux is used to communicate between FPGA logic and ARM processor. Xillinux is a platform for Zynq that is released by Xillybus Ltd. Linux (Ubuntu) OS runs on the ARM processor. Xillinux can access to FPGA logic through a specific device file.
  • ROS (hydro or groovy) please install on xillinux!
  • ssh server

Software

  • ISE 14.7 (for hardware synthesis)

Sensor

How to build software

Please replace catkin_ws to your work space name.

cd ~/catkin_ws/src
git clone https://github.com/Kumikomi/openreroc_motion_sensor
cd ..
catkin_make 

Test Run

  1. Xillinux installation

  2. Hardware bitstream installation Please replace xillydemo.bit on the SD card with openreroc_pwm/hardware/image/openreroc_motion_sensor.bit

  3. Insert SD card & boot system

  4. Run sample nodes

terminal 1

cd ~/catkin_ws/
source devel/setup.bash
roscore &
rosrun openreroc_motion_sensor sample_output

terminal 2

cd ~/catkin_ws/
source devel/setup.bash
rosrun openreroc_motion_sensor openreroc_motion_sensor

How to build hardware

It's too complex to describe all the necessary procedure to build hardware, so some hints are shown below. 1 : Place of Soruce code hardware/src
2 : Pin assignment: add the code below to xillydemo.ucf

NET  led[0]     LOC = V22 | IOSTANDARD = LVCMOS33;  # LD4
NET  led[1]     LOC = W22 | IOSTANDARD = LVCMOS33;  # LD5
NET  led[2]     LOC = U19 | IOSTANDARD = LVCMOS33;  # LD6
NET  led[3]     LOC = U14 | IOSTANDARD = LVCMOS33;  # LD7

NET PS_GPIO[7] LOC = K18 | IOSTANDARD = LVCMOS33;  # "FMC-LA05_N"
NET PS_GPIO[8] LOC = J18 | IOSTANDARD = LVCMOS33;  # "FMC-LA05_P"
NET PS_GPIO[9] LOC = L22 | IOSTANDARD = LVCMOS33;  # "FMC-LA06_N"
NET PS_GPIO[10] LOC = L21 | IOSTANDARD = LVCMOS33;  # "FMC-LA06_P"

3 : Add the ports to Top module xillydemo.v

inout sig,
output [3:0] led

4 : Add the FIFO connection to Top module xillydemo.v

// 32-bit loopback
//   fifo_32x512 fifo_32
//     (
//      .clk(bus_clk),
//      .srst(!user_w_write_32_open && !user_r_read_32_open),
//      .din(user_w_write_32_data),
//      .wr_en(user_w_write_32_wren),
//      .rd_en(user_r_read_32_rden),
//      .dout(user_r_read_32_data),
//      .full(user_w_write_32_full),
//      .empty(user_r_read_32_empty)
//      );

sensor_ctl sensor_ctl
(
    .clk(bus_clk),
    .rst_32(!user_w_write_32_open && !user_r_read_32_open),
    .din_32(user_w_write_32_data),
    .wr_en_32(user_w_write_32_wren),
    .rd_en_32(user_r_read_32_rden),
    .dout_32(user_r_read_32_data),
    .full_32(user_w_write_32_full),
    .empty_32(user_r_read_32_empty),
    .sig(sig),
    .led(led)
);

# Acknowledgements This R&D project is done by Takeshi Ohkawa, Utsunomiya University. - https://sites.google.com/site/ohkawatakeshi/profile_en - http://www.is.utsunomiya-u.ac.jp/pearlab/openreroc/en/

This research and development work was supported by MIC/SCOPE #152103014.

CONTRIBUTING

No CONTRIBUTING.md found.

Repository Summary

Checkout URI https://github.com/Kumikomi/openreroc_motion_sensor.git
VCS Type git
VCS Version master
Last Updated 2018-05-23
Dev Status UNMAINTAINED
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

Name Version
openreroc_motion_sensor 0.1.0

README

openreroc_motion_sensor

OpenReroc (Open Reconfigurable Robot Component) is a project to build an open source platform of reconfigurable (i.e. FPGA) devices for robot components.
This package supports ultra sonic sensor an FPGA board (ZedBoard Xilinx). openreroc_motion_sensor publishes sensor data to the topic.

Git: https://github.com/Kumikomi/openreroc_motion_sensor
Author: Kazushi Yamashina (Utsunomiya University)
Copyright: 2015, Kazushi Yamashina, Utsunomiya University
License: new BSD License
Latest Version: 0.1.0

Directry tree

openreroc_motion_sensor 
|-include/ 
|-msg/ 
|-hardware
    |-src/
    |-image/
|-src/ 
|-CMakeLists.txt 
|-package.xml  
|-LICENSE.txt

Requirements

Platform for ROS system

  • ZedBoard
  • xillinux-1.3c
    • Xillinux is used to communicate between FPGA logic and ARM processor. Xillinux is a platform for Zynq that is released by Xillybus Ltd. Linux (Ubuntu) OS runs on the ARM processor. Xillinux can access to FPGA logic through a specific device file.
  • ROS (hydro or groovy) please install on xillinux!
  • ssh server

Software

  • ISE 14.7 (for hardware synthesis)

Sensor

How to build software

Please replace catkin_ws to your work space name.

cd ~/catkin_ws/src
git clone https://github.com/Kumikomi/openreroc_motion_sensor
cd ..
catkin_make 

Test Run

  1. Xillinux installation

  2. Hardware bitstream installation Please replace xillydemo.bit on the SD card with openreroc_pwm/hardware/image/openreroc_motion_sensor.bit

  3. Insert SD card & boot system

  4. Run sample nodes

terminal 1

cd ~/catkin_ws/
source devel/setup.bash
roscore &
rosrun openreroc_motion_sensor sample_output

terminal 2

cd ~/catkin_ws/
source devel/setup.bash
rosrun openreroc_motion_sensor openreroc_motion_sensor

How to build hardware

It's too complex to describe all the necessary procedure to build hardware, so some hints are shown below. 1 : Place of Soruce code hardware/src
2 : Pin assignment: add the code below to xillydemo.ucf

NET  led[0]     LOC = V22 | IOSTANDARD = LVCMOS33;  # LD4
NET  led[1]     LOC = W22 | IOSTANDARD = LVCMOS33;  # LD5
NET  led[2]     LOC = U19 | IOSTANDARD = LVCMOS33;  # LD6
NET  led[3]     LOC = U14 | IOSTANDARD = LVCMOS33;  # LD7

NET PS_GPIO[7] LOC = K18 | IOSTANDARD = LVCMOS33;  # "FMC-LA05_N"
NET PS_GPIO[8] LOC = J18 | IOSTANDARD = LVCMOS33;  # "FMC-LA05_P"
NET PS_GPIO[9] LOC = L22 | IOSTANDARD = LVCMOS33;  # "FMC-LA06_N"
NET PS_GPIO[10] LOC = L21 | IOSTANDARD = LVCMOS33;  # "FMC-LA06_P"

3 : Add the ports to Top module xillydemo.v

inout sig,
output [3:0] led

4 : Add the FIFO connection to Top module xillydemo.v

// 32-bit loopback
//   fifo_32x512 fifo_32
//     (
//      .clk(bus_clk),
//      .srst(!user_w_write_32_open && !user_r_read_32_open),
//      .din(user_w_write_32_data),
//      .wr_en(user_w_write_32_wren),
//      .rd_en(user_r_read_32_rden),
//      .dout(user_r_read_32_data),
//      .full(user_w_write_32_full),
//      .empty(user_r_read_32_empty)
//      );

sensor_ctl sensor_ctl
(
    .clk(bus_clk),
    .rst_32(!user_w_write_32_open && !user_r_read_32_open),
    .din_32(user_w_write_32_data),
    .wr_en_32(user_w_write_32_wren),
    .rd_en_32(user_r_read_32_rden),
    .dout_32(user_r_read_32_data),
    .full_32(user_w_write_32_full),
    .empty_32(user_r_read_32_empty),
    .sig(sig),
    .led(led)
);

# Acknowledgements This R&D project is done by Takeshi Ohkawa, Utsunomiya University. - https://sites.google.com/site/ohkawatakeshi/profile_en - http://www.is.utsunomiya-u.ac.jp/pearlab/openreroc/en/

This research and development work was supported by MIC/SCOPE #152103014.

CONTRIBUTING

No CONTRIBUTING.md found.