Code Monkey home page Code Monkey logo

advantech-boards-ros-2's Introduction

Advantech Boards ROS 2 wrapper

Welcome to the Advantech ROS 2 wrapper repository! This repository contains the source code and documentation of a ROS 2 wrapper for the Advantech devices. In our lab we have only the Advantech 4718 but I think the SDK provided by Advantech is the same for all the boards so it should also work in your device.

Table of Contents

Overview

The Advantech 4718 is a high-performance industrial GPIO board designed for use in harsh environments. This repository contains the software and documentation needed to use and configure the device. The SDK provided by Advantech are supported up to Ubuntu 20.04 but I tested them and they also work in Ubuntu 22.04.

Hardware

The repo has been tested in with Ubuntu 22.04 and ROS 2 Humble with Cyclone as DDS. Further compatibility with other Linux/ROS Distros is not excluded but it has not been tested.

Installation

To install the software and tools required to use the Advantech, follow these steps:

  1. Clone the repository to your local machine:

    git clone https://github.com/pucciland95/advantech_usb4718.git
  2. Navigate to the root directory of the repository.

    cd advantech_usb4718
  3. Install any required dependencies using the provided instructions here depending on the board you have.

  4. Compile the package using:

    colcon build

Usage

The Advantech 4718 can be used for a wide range of industrial applications. The package is provided with a launch file with just one argument (pay attention that the board should be connected to your computer via USB port):

  • board_name: this is the identifier of your board. Change it accordingly to your needs.

Once launched the package provides the user with the following services:

  • reset_do: resets all the digital outputs of the board to LOW.
  • set_do_high: sets HIGH the digital outputs of a specific board port.
  • set_do_low: sets LOW the digital outputs of a specific board port.
  • print_do_status: prints on screen the DO status.

and the following topic:

  • DI_board_status: provides the user with the digital input status (HIGH/LOW) written in esadecimal form.

Contributing

We welcome contributions to this repository! If you'd like to contribute, please follow these steps:

  1. Fork the repository to your own account.
  2. Make your changes in a new branch.
  3. Submit a pull request to have your changes reviewed and merged.

advantech-boards-ros-2's People

Contributors

pucciland95 avatar

Watchers

 avatar

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.