Coder Social home page Coder Social logo

introlab / t-top Goto Github PK

View Code? Open in Web Editor NEW
7.0 5.0 5.0 918.89 MB

T-Top is a tabletop robot designed with advanced audio and vision sensors, deep learning perceptual processing and telecommunication capabilities to provide richer interaction modalities and develop higher cognitive abilities from interacting with people.

License: Other

C 0.29% C++ 40.91% CMake 10.06% Python 42.29% Shell 1.46% JavaScript 4.70% HTML 0.02% Vue 0.27%
socially-assistive-robot open-source-hri-platform ros deep-learning table-top-robot 3d-print companion robot robotics

t-top's Introduction

T-Top

T-Top is a tabletop robot designed with advanced audio and vision sensors, deep learning perceptual processing and telecommunication capabilities to provide richer interaction modalities and develop higher cognitive abilities from interacting with people.

T-Top

T-Top

Authors

  • Marc-Antoine Maheux (@mamaheux)
  • Charles Caya (@chcaya)
  • Alexandre Filion (@alexfilion)
  • Dominic Létourneau (@doumdi)
  • Philippe Warren (@philippewarren)
  • Ian-Mathieu Joly (@joli-1801)

Licensing

Features

Category Type Description
Power Power Adapter 19 V
Battery 1x RRC2054-2
Battery Charger 1x RRC-PMM240
Sensors Microphone Array 16x xSoundsMicrophones, 1x 16SoundsUSB
RGB-D Camera 1x Intel RealSense D435i
Wide Angle Camera 1x Arducam AR0230
Touchscreen 1x 7 inch 1024x600 capacitive touchscreen
Current/Voltage INA220
Light Sensors 4x Adafruit ALS-PT19
Buttons 4x buttons
Actuators Stewart Platform Displacement range: ±3 cm (x, y and z), ±20° (x and y), ±30° (z). Motor: Dynamixel XL430-W250
Rotating Base Displacement range: illimited. Motor: Dynamixel XL430-W250
Speakers 4x Dayton Audio DMA45-8, 2x MAX9744
Cooling 2x Noctua NF-A4x20 5V
Touchscreen 1x 7 inch 1024x600 capacitive touchscreen
LED Battery status, volume level, led strip
Network WiFi Intel Dual Band Wireless-AC 8265 NGW
Ethernet 100 Mbps
Processing Computer NVIDIA Jetson AGX Xavier Developer Kit or NVIDIA Jetson AGX Xavier Orin Developer Kit
Motor MCU Teensy 4.0
Battery MCU Teensy LC
Perceptions SLAM, object detection, person pose estimation, face recognition, sound classification, speaker identification, robot name detection, speech to text, person identification, music beat detection, source source localization, ego noise reduction, vad
Behaviors Telepresence, emotions, talking, greeting, face following, dancing, exploring, sound following

Repository Structure

  • The documentation folder contains the documentation to build and configure T-Top.
  • The CAD folder contains the SolidWorks files of the robot. Il also contains the DXF and STL files to cut and print custom parts.
  • The firmwares folder contains the firmware for the MCUs.
  • The PCB folder contains the KiCad files of the custom PCBs. Il also contains the Gerber files to manufacture the PCBs.
  • The ros folder contains the ROS packages to use the robot.
  • The tools folder contains the tools to develop and use the robot.

Development Computer Setup

See 01_COMPUTER_CONFIGURATION.md

Papers

Sponsor

IntRoLab

IntRoLab - Intelligent / Interactive / Integrated / Interdisciplinary Robot Lab

t-top's People

Contributors

doumdi avatar joli-1801 avatar mamaheux avatar mariamfdil avatar philippewarren avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

t-top's Issues

T-Top - DNN improvements

Improve audio analysis

  • Add the ODAS tracking in the message
  • Reduce the interval between analysis
  • ODAS frame Z at the base

Improve perception logger

  • Robot state
    • Add the activation of the strategies
  • Video analysis
    • Add the class/box confidence of the object
    • Add the blur measure of a face
    • Add how the face is aligned
  • Audio Analysis
    • Add ODAS tracking
  • Add odas to head TF

Improve video analyzer

  • Object Detection
    • Add the class/box confidence value to the message
  • Face descriptor
    • Add a value measuring the blur of the face to the message (std of laplacian filter output)
    • Add a flag indicating how the face is aligned to the message

T-Top Version 4 - Features

  • CAD

    • Fit the NVIDIA Jetson AGX Orin
    • Add a LED strip around the base (WS2812B, 30 LEDs / m)
    • Add a LEDs diffuser
    • Add buttons to control the sound level
    • Replace discrete LEDs by a strip (WS2812B, 144 LEDs / m)
    • Add a LED strip to show the sound level (WS2812B, 144 LEDs / m)
    • Add springs to the servo horns to reduce the power consumption
    • Add light sensor
    • Add tie wrap hole on the stewart bottom
  • PCB - PSU Control

    • LEDs around the base connected to PCB Control
    • Replace the ISO7521C by a tranceiver (MAX3221E)
    • Button inputs
    • The MCU closes the power so it can send a signal to the computer (example)
    • K7805-3AR3 for 5V
    • Add a EMC compliance circuit
    • Add a light sensor to adjust the LED brightness (ALS-PT19)
  • PCB - Replace the OpenCR with a custom board using a Teensy 4.0

    • Use a Schmitt trigger for the limit switch
    • UART for PSU Control (tranceiver MAX3221E)
    • Button inputs (74HC2G14GV)
    • TTL Dynamixel IC: SN74LVC2G241DCTR
    • TTL Dynamixel Connector: 25SH-C-03-TS
    • IMU (ICM-40627)
    • R-78E5.0-0.5 for 5V
    • OpenCR Schematic
  • Firmware - psu_control

    • Use this lib for the LED controls
    • Read the buttons to change the sound level
    • Send the current volume to the OpenCR
    • Read LED animation from the OpenCR
    • Max LED brightness 50% max (adjusted with the light sensors)
    • Max audio power: 12 W (battery) or 30 W (PSU)
  • Firmware OpenCR

    • Send the volume to ROS
    • Read the LED animation from ROS
    • Send the buttons to ROS
    • Remove ROS and use a custom serial protocol
  • Jetson AGX Orin

  • ROS

    • Update the stewart platform parameters
    • Update the odas configuration
    • Update TF
    • control_panel
      • read the volume from opencr
  • Documentation

    • BOM
      • PSU Control PCB
      • Buck-Boost PCB
      • Dynamixel Control PCB
      • 3D printing
      • Laser/CNC
      • Others
    • Assembly
    • TF
    • RS232/UART protocol
    • Electrical block diagram
    • Stewart displacement (root readme)
  • Update main readme images

Ideas

  • Use only one MCU

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.