Skip to the content
2 layers91 × 95.3 mmScrew connector, the printed circuit board in 3D

Screw connector

Tai-Min/Statek-UAV6

ROS based UAV (Unmanned Autonomous Vehicle), Master's degree final project

Size
91 × 95.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
642
Nets
120
Pads
804
Tracks, vias
573, 0
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
4 Dec 2020
Updated
7 Nov 2021

Overview

Screw connector is an open-source printed circuit board by Tai-Min, from the Tai-Min/Statek-UAV repository on GitHub, published under the MIT licence. It is a 2-layer board of 91 × 95.3 mm with 642 parts on 120 nets, routed with 573 tracks and 0 vias.

It belongs with the sensors and measurement and robots and motor control boards of this library.

README

README.md

Statek-UAV

ROS based UAV, Master's degree final project.

This repository consists of CAD files for the chassis, CAD files for electronic boards, catkin workspace for all ROS nodes created for the project and some additional scripts used during development.

The core part of this project is the real, 3D printed vehicle along with all the hardware attached to it (Jetson Nano B01 for main controller and STM32f103RBT6 for real time core).

The software part of this project can be split into real time (closed loop wheel control), short term navigation (movement between two GPS waypoints) and long term navigation (navigation through series of GPS waypoints). During the project's development, my main focus was on short term navigation, which is also the biggest and most complicated part of the project. Short term navigation stack consists of static local map generator, dynamic local map generator (human leg detector mostly based on U-Net fully convolutional neural network), Voronoi graph generator, A* path planner and non linear model predictive controller for navigation.

For more info see this arcitle.

Just to warn you: If you want to use this project somehow, use it as reference only. It is NOT meant to be assembled as it contains some design flaws both in hardware and software that I don't intent to fix in this iteration of the project as code in this repository will stay in unchanged since the moment I handed over my thesis. Most of the files in the "instructions" folder consists of the steps I've did to setup my hardware and Ipopt solver. Those might not work for you/could be dangerous (I might've abused sudo a bit) so use them at your own risk. The code quality depends on the time I had untill the deadline to hand over my thesis. In my opinion it should be fine for the most part, well documented and easy to follow but judge for yourself.

Disclaimer: I've tried to credit all authors of 3D files used in the project. All of the models had permissive license allowing me to use them. If you see your work here without being credited or you just don't want to have your files used here - open an issue on this project and I'll fix any problems.

The files in this folder have the following structure:

  • CAD
    • detailed - Inventor files for the 3D printing and assembling.
    • low_poly - Inventor files for simple low poly model for Gazebo and Rviz.
  • catkin_ws/src
    • statek - Metapackage for the project
    • statek_calibrate - Calibration algorithms for cameras, GPS Kalman filter, IMU, Motor's PI controller autotuning.
    • statek_config - Config files for the robot, including transformations, urdf and parameters for ROS nodes.
    • statek_hw - code to launch hardware based nodes (lidar, rosserial, cameras etc.) along with source code for real time controller.
    • statek_map - Mapping algorithms (dynamic local mapper, voronoi generator and GPS to hyperplane casting).
    • statek_ml - Leg detector based mostly on U-net fully convolutional neural network
    • statek_nav - Navigation algorithms (NMPC and GPS waypoint follower script).
    • statek_plan - A* path planner for short term navigation.
    • statek_playground - Simple launch nodes to play with the hardware.
    • statek_rviz - Rviz visualization files.
    • statek_sim - Gazebo simulation files.
    • statek_srv - Server files to communicate with web application (really rough draft).
    • statek_teleop - Teleoperation nodes for Dualshock 4 gamepad.
  • electronics
    • AM4096_encoder - KiCad's files for AM4096 encoder board.
    • Nucleo_screw_shield - KiCad's files for screw shield that fits morpho connector.
    • button_panel - Unused in the project.
    • connections - Electrical connections of the project.
  • instructions - Rough draft of what I did to setup the robot.
  • media - Contains camera's calibration chessboard.
  • thesis_scripts - Some files used to add more value to the project.

alt text

Parts

642
QtyValueFootprintReferences
11Conn_01x03TerminalBlock_MetzConnect:TerminalBlock_MetzConnect_Type086_RT03403HBLC_1x03_P3.81mm_HorizontalJ8, J13, J14, J15, J16, J17, J19, J20, J21, J22, J23
10Conn_01x02TerminalBlock_MetzConnect:TerminalBlock_MetzConnect_Type086_RT03402HBLC_1x02_P3.81mm_HorizontalJ1, J18, J24, J25, J26, J27, J28, J29, J30, J31
2Conn_01x08Connector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_VerticalJ3, J6
2Conn_01x08Connector_PinSocket_2.54mm:PinSocket_1x08_P2.54mm_VerticalJ9, J12
2Conn_02x19_Odd_EvenConnector_PinSocket_2.54mm:PinSocket_2x19_P2.54mm_VerticalJ2, J7
1Conn_01x06Connector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ4
1Conn_01x06Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ10
1Conn_01x10Connector_PinHeader_2.54mm:PinHeader_1x10_P2.54mm_VerticalJ5
1Conn_01x10Connector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ11

The 31 most common of 642 parts.

More from Tai-Min/Statek-UAV

2
  • 2 layers92.5 × 41.3 mmButton panel, the printed circuit board in 3D

    Button panel

    Tai-Min/Statek-UAV

    ROS based UAV (Unmanned Autonomous Vehicle), Master's degree final project

    36 parts6MIT
  • 2 layers39.9 × 40 mmEnkoder, the printed circuit board in 3D

    Enkoder

    Tai-Min/Statek-UAV

    ROS based UAV (Unmanned Autonomous Vehicle), Master's degree final project

    21 parts6MIT

Similar boards

  • 2 layers97 × 92 mmTinyDiversityRX5808 panelized, the printed circuit board in 3D

    TinyDiversityRX5808 panelized

    nppc/TinyDiversityRX5808

    Recording taken with Eachine Pro DVR integrated in to the EV100 goggles.

    640 parts7
  • 2 layers151 × 94 mmLED matrix Error-2026, the printed circuit board in 3D

    LED matrix Error-2026

    Jed0vcela/LED-matrix-Error-2026

    Kapesní zařízení s LED maticí 32×16, postavené na Raspberry Pi Pico (RP2040) s MicroPythonem. Samotné zařízení nabízí přes 20 vestavěných her a pomůcek; víc zařízení lze propojit řetězcem po UART pro hry pro dva hráče a…

    639 parts
  • 2 layers80 × 80 mmBreadboard grid-2.54mm 2x2, the printed circuit board in 3D

    Breadboard grid-2.54mm 2x2

    probably-Erwins-Cat/Circuit-Nodes

    Circuit Nodes is an educational tool shared under CC BY-NC-SA 4.0 to help students understand electronic circuits by physically building them.

    645 parts3
  • 2 layers102 × 102 mmBno08x i2c board v3-large panel, the printed circuit board in 3D

    Bno08x i2c board v3-large panel

    tgodfrey0/BNO08x-I2C-PCBs

    This repository contains W.I.P. code and hardware designed for a 9DOF sensor module using a BNO085.

    647 parts1
  • 2 layers35.8 × 77 mmUconsole expansion card template 1.27, the printed circuit board in 3D

    Uconsole expansion card template 1.27

    crossplatformdev/uConsole-Universal-Expansion-Board

    Breakout board for designing ClockWorkPi uConsole expansion boards

    634 parts23

Questions

How big is the Screw connector PCB?

It measures 91 × 95.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Screw connector use?

642 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Screw connector KiCad files?

From the Tai-Min/Statek-UAV repository on GitHub, at the commit this page was made from: the board is electronics/Nucleo_screw_shield/screw_connector.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Screw connector design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).