HackRover: Cyber Security in Motion€¦ · Motor movement commands Motor movement commands ROS...

1
HackRover: Cyber Security in HackRover: Cyber Security in Motion Motion Josaiah Clark Josaiah Clark [email protected] [email protected] Gary Nguyen Gary Nguyen [email protected] [email protected] Mat Pearce Mat Pearce [email protected] [email protected] Dalton Wiebe Dalton Wiebe [email protected] [email protected] Chase Sutton Chase Sutton [email protected] [email protected] Special thanks to: Professor Mark Kochanski, Geoffrey Powell-Isom, Silver Lucoris, Victor Suciu, Justin Heinzig, Mohammad Dabbagh, Anwar Aminnudin, Kassim Shaibi, Yang Zhou, Taylor Johnston, Connor Lauerman, Matthew Lauerman, Long Ly, Daniel Zhuge Special thanks to: Professor Mark Kochanski, Geoffrey Powell-Isom, Silver Lucoris, Victor Suciu, Justin Heinzig, Mohammad Dabbagh, Anwar Aminnudin, Kassim Shaibi, Yang Zhou, Taylor Johnston, Connor Lauerman, Matthew Lauerman, Long Ly, Daniel Zhuge Why Solution Data Analysis & Testing Results All technology-reliant companies are interested in leveraging big data to make better decisions about products and services. The way that industry is supporting the shift toward big data is by collecting diagnostics and other info in real time from sensors. This trend toward leveraging the Internet of Things is what many are calling “Industry 4.0.” The aim of this capstone was to develop a model for exploring ethical hacking of self-driving cars and autonomous manufacturing equipment. This model would use technology similar to both, mainly through the use of embedded systems and sensors. Client: Pierre Mourad, PhD Client: Pierre Mourad, PhD Advisor: Imen Elloumi-Hannachi, PhD Advisor: Imen Elloumi-Hannachi, PhD A mecanum wheel- based drivetrain was designed to better suit the mobility needs of an indoor rover. The system architecture for a semi-autonomous rover was laid out in a flowchart. A printed circuit board was designed in collaboration with an Electrical Engineering capstone in order to enhance the integrity and repeatibility of our rover’s electrical system. Root cause analysis was used to find the reason for permanent marring and bending in all of the drivetrain’s 6mm 2101 stainless steel shafts. 8mm carbon steel keyed shafts were used in the newest iteration for easy maintenance and greater dynamic loading capacity. To facilitate remote software testing of the arm, a simplified model was made in SolidWorks with accurate link dimensions and weight distribution. Motor power wires were burnt during a Winter demonstration. Investigation revealed that drivetrain motors were exceeding allowable current draw of their power wires while the rovers were driving on carpet. Wire sizes were increased from 22AWG to 16AWG. IMU Data Filtered IMU Data Odometry Data Filtered Odometry Data Motor movement commands Motor movement commands ROS Master Node Raspberry Pi Authorized User Network Hacker xbox event commands,... Camera feed,... Hacker Using VM Network Adapter Client Virtual Machine User Interface Virtual Machines Hacking VM Arm Movement Commands Jetson Nano LattePanda ROS Motor... Motor Commands... IBT-2 Motor Controller Robotic Arm Intel Realsense D435i USB Camera Camera ROS Node Motor Commands... Ultrasonic Sensor Array Status Signals Motor Commands... Encoder Data Status Signals Wheel Odometry Data ROS Sonar... Trig Echo... Distance Data... Status Signals Magnetometer & Accelerometer Firewall NAT Magnetic Orientation... ROS .bag File... Xbox Controller Wheel Odometry Data... SSH... Camera Feed Feed Requests... Camera feed,... Camera feed,... xbox event commands,... xbox event commands... OUTPUT INPUT OUTPUT INPUT OUTPUT INPUT Encoder Translation... Magnetometer/ Accelerometer ROS Node Firewall Embedded LAN Xbox Input / Output... Legend Completely New Code Reconfigured Code COTS Code Arm Position IMU Fusion/Filtering... Motor Position... Accelerometer/... robot_localization... Visual Odometry... 3D Map Wheel Odometry Data Motor Encoder realsense2_camera node Raspberry Pi Zero W Xbox Controller... Xbox Movement Commands Xbox movement commands Joystick Events... Arm movement commands Arm Movement... Camera Feed Magnetic Orientation... Arm ROS Node Wheel Odometry Data... The project sparked enough interest to start a HackRover club, the purpose of which is the same as this capstone project: to promote cyber awareness in IoT/IIoT. For more information, visit hackrover.com or email [email protected]. With the new frame built, the rover is ready for integration of electrical, mechanical, and software elements. Conclusion & Future Work The project still has not achieved autonomy, which is crucial for our hacking functions. In the next iteration of the project, the following topics should be explored: 1. ROS drivetrain control development 2. Simultaneous Localization and Mapping (SLAM) 3. One-shot learning for arm articulation tasks We have implemented drivetrain and arm controls with an Xbox controller. Follow our Github page to see the codebase and new feature projects:

Transcript of HackRover: Cyber Security in Motion€¦ · Motor movement commands Motor movement commands ROS...

  • HackRover: Cyber Security in HackRover: Cyber Security in MotionMotion Josaiah ClarkJosaiah Clark

    [email protected]@gmail.comGary NguyenGary Nguyen

    [email protected]@gmail.comMat PearceMat Pearce

    [email protected]@gmail.comDalton WiebeDalton Wiebe

    [email protected]@gmail.comChase SuttonChase Sutton

    [email protected]@gmail.com

    Special thanks to: Professor Mark Kochanski, Geoffrey Powell-Isom, Silver Lucoris, Victor Suciu, Justin Heinzig, Mohammad Dabbagh, Anwar Aminnudin, Kassim Shaibi, Yang Zhou, Taylor Johnston, Connor Lauerman, Matthew Lauerman, Long Ly, Daniel ZhugeSpecial thanks to: Professor Mark Kochanski, Geoffrey Powell-Isom, Silver Lucoris, Victor Suciu, Justin Heinzig, Mohammad Dabbagh, Anwar Aminnudin, Kassim Shaibi, Yang Zhou, Taylor Johnston, Connor Lauerman, Matthew Lauerman, Long Ly, Daniel Zhuge

    Why

    Solution

    Data Analysis & Testing

    Results

    All technology-reliant companies are interested in leveraging big data to make better decisions about products and services. The way that industry is supporting the shift toward big data is by collecting diagnostics and other info in real time from sensors. This trend toward leveraging the Internet of Things is what many are calling “Industry 4.0.”

    The aim of this capstone was to develop a model for exploring ethical hacking of self-driving cars and autonomous manufacturing equipment. This model would use technology similar to both, mainly through the use of embedded systems and sensors.

    Client: Pierre Mourad, PhD Client: Pierre Mourad, PhD Advisor: Imen Elloumi-Hannachi, PhDAdvisor: Imen Elloumi-Hannachi, PhD

    A mecanum wheel-based drivetrain was designed to better suit the

    mobility needs of an indoor rover.

    The system architecture for a semi-autonomous rover was laid out in a flowchart.

    A printed circuit board was designed in collaboration with an Electrical Engineering capstone in order to

    enhance the integrity and repeatibility of our rover’s electrical system.

    Root cause analysis was used to find the reason for permanent marring and bending in all of the drivetrain’s 6mm 2101 stainless steel shafts. 8mm carbon steel keyed shafts were used in the newest iteration for easy maintenance and greater dynamic loading capacity.

    To facilitate remote software testing of the arm, a simplified model was

    made in SolidWorks with accurate link dimensions and weight distribution.

    Motor power wires were burnt during a Winter demonstration. Investigation revealed that drivetrain

    motors were exceeding allowable current draw of their power wires while the rovers were driving on carpet. Wire sizes were increased from 22AWG to

    16AWG.Client Virtual Machine

    User Interface

    OUTPUT

    INPUT

    Enable/Disable Xbox Controller

    Enable/Disable Xbox Controller

    Enable/Disable Arm...

    Enable/Disable Arm...Drivetrain Movement...

    Operations Tab

    Mouse-Click Arm...

    Mouse-Click Drivetrain...

    Freeze all rover actions...

    Xbox control...

    Arm camera live feed...

    RealSense RGB live feed RealSense RGB Live Feed

    Arm Movement Commands

    RealSense Live RGB Feed

    Arm Movement Mouse...

    Drivetrain movement...

    Enab

    le/D

    isab

    le...

    Autonomy Tab

    3D Map display

    Distance/Angle Navig...

    Live RealSense IR fe...

    Autonomus mode toggl...

    Picture Pallet Tab

    Picture Album

    Dis

    tanc

    e/An

    gle

    Com

    man

    ds

    Mov

    e ro

    ver _

    _ fe

    et a

    t __

    degr

    ees

    Emergency Shutdown

    Emer

    genc

    y Sh

    utdo

    wn

    Enab

    le/D

    isab

    le...

    Emer

    genc

    y Sh

    utdo

    wn

    3D Map

    Enable/Disable autonomous navigation

    RealSense IR Live Feed

    Enab

    le/D

    isab

    le...

    Camera Screenshots

    IMU Data

    Filtered IMU Data

    Odometry Data

    Filtered Odometry DataMotor movement commands

    Motor movement commands

    ROS Master Node

    Raspberry Pi

    Authorized User

    Network

    Hacker

    xbox event commands,...

    Camera feed,...

    Hacker Using VM

    Network Adapter

    Client Virtual Machine

    User Interface

    Virtual Machines

    Hacking VM

    Arm Movement Commands

    Jetson Nano

    LattePanda

    ROS Motor...

    Motor Commands...

    IBT-2 Motor Controller

    Robotic Arm

    Intel Realsense D435i

    USB Camera

    Camera ROS Node

    Motor Commands...

    Ultrasonic SensorArray

    Status SignalsMotor Commands...

    Encoder DataStatus Signals

    Wheel Odometry Data

    ROS Sonar...

    Trig Echo...

    Distance Data...

    Status Signals

    Magnetometer &Accelerometer

    FirewallNAT

    Magnetic Orientation...

    ROS .bag File...

    Xbox Controller

    Wheel Odometry Data...SSH...

    Camera Feed Feed Requests...

    Camera feed,... Camera feed,...

    xbox event commands,... xbox event commands...

    OUTPUT

    INPUT

    OUTPUT INPUT

    OUTPUTINPUT

    Arm Mouse...

    Encoder Translation...

    Magnetometer/Accelerometer

    ROS Node

    FirewallEmbedded LAN

    Xbox Input / Output...

    Legend

    Completely New Code

    Reconfigured Code

    COTS Code

    Arm PositionIMU Fusion/Filtering...

    Motor Position...

    Accelerometer/...

    robot_localization...Visual Odometry...

    3D Map

    Wheel Odometry Data

    Motor Encoder

    realsense2_camera node

    Raspberry Pi Zero W

    Xbox Controller...Xbox Movement Commands

    Xbox movement commands

    Joystick Events...

    Arm movement commands

    Arm Movement...

    Camera FeedMagnetic Orientation...

    Enable/Disable Xbox ControllerEnable/Disable Arm Camera Live Feed

    RealSense RGB Live Feed

    Arm Movement Mouse click events

    Drivetrain movement mouse click...

    3D MapEnable/Disable autonomous navigation

    RealSense IR Live Feed

    Emergency Shutdown

    Arm ROS Node

    Wheel Odometry Data...

    Viewer does not support full SVG 1.1

    The project sparked enough interest to start a HackRover club, the purpose of which is the

    same as this capstone project: to promote cyber awareness in IoT/IIoT. For more information, visit

    hackrover.com or email [email protected].

    With the new frame built, the rover is ready for integration of electrical, mechanical, and software elements.

    Conclusion & Future WorkThe project still has not achieved autonomy, which is crucial for our hacking functions. In the next iteration of the project, the following topics should be explored:1. ROS drivetrain control development2. Simultaneous Localization and Mapping (SLAM)3. One-shot learning for arm articulation tasks

    We have implemented drivetrain and arm controls with an Xbox controller. Follow our Github page to see the codebase and new feature projects: