{"id":19671446,"url":"https://github.com/lasithaamarasinghe/3d-mapper","last_synced_at":"2025-06-22T10:36:38.516Z","repository":{"id":238937999,"uuid":"798035244","full_name":"LasithaAmarasinghe/3D-Mapper","owner":"LasithaAmarasinghe","description":"This 3D plotting device is developed for the semester 4 project under EN 2160: Electronic Design Realization.","archived":false,"fork":false,"pushed_at":"2025-01-23T16:23:50.000Z","size":79302,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-27T04:50:14.234Z","etag":null,"topics":["3d-plotter","3dpointcloud","altium-designer","arduino","atmega2560","avr-programming","ch340","cpp","i2c","nema17","python3","smd","solidworks","stepper-motor","tof","triangulation"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LasithaAmarasinghe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-09T00:55:25.000Z","updated_at":"2025-01-23T16:23:54.000Z","dependencies_parsed_at":"2025-01-23T17:32:14.654Z","dependency_job_id":null,"html_url":"https://github.com/LasithaAmarasinghe/3D-Mapper","commit_stats":null,"previous_names":["lasithaamarasinghe/3d-mapper"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/LasithaAmarasinghe/3D-Mapper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LasithaAmarasinghe%2F3D-Mapper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LasithaAmarasinghe%2F3D-Mapper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LasithaAmarasinghe%2F3D-Mapper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LasithaAmarasinghe%2F3D-Mapper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LasithaAmarasinghe","download_url":"https://codeload.github.com/LasithaAmarasinghe/3D-Mapper/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LasithaAmarasinghe%2F3D-Mapper/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261280069,"owners_count":23134901,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-plotter","3dpointcloud","altium-designer","arduino","atmega2560","avr-programming","ch340","cpp","i2c","nema17","python3","smd","solidworks","stepper-motor","tof","triangulation"],"created_at":"2024-11-11T17:08:49.453Z","updated_at":"2025-06-22T10:36:33.499Z","avatar_url":"https://github.com/LasithaAmarasinghe.png","language":"C++","readme":"# 3D-Mapper \n* 3D-Mapper is a 3D plotting device made for short-range object detection powered by [ATmega 2560](https://github.com/LasithaAmarasinghe/3D-Mapper/blob/main/data%20sheets/ATMEGA2560.PDF).\n* This is developed for the semester 4 project under EN 2160: Electronic Design Realization.\n\u003cimg src=\"https://github.com/user-attachments/assets/1844f303-6aa5-4fe4-a0ad-2502be936963\" width=\"600\" height=\"600\"\u003e\n\n\n## Working Principle \n\n* This device measures distances to objects using two Time-of-Flight (TOF) sensors, which are rotated by two stepper motors to cover the entire 3D environment.\n* The distance values are saved in (r, theta, alpha) coordinates and then converted to (x, y, z) coordinates.\n* Using the [PyVista](https://github.com/pyvista) library in Python, a 3D point cloud is generated from these cartesian coordinates. \n* A tetrahedral mesh is created by performing [3D Delaunay triangulation](https://github.com/LasithaAmarasinghe/3D-Mapper/blob/main/3D%20Delaunay%20Triangulation.pdf) on the point cloud.\n* Then the outer surface of this tetrahedral mesh is extracted to form a surface mesh.\n\n## Why \"3D-Mapper\"?\n\n* Precision in Short-Range Mapping\n* Comprehensive Coverage\n* Cost-Effective\n* Scalability and Customization\n* Versatility Across Industries\n\n## Areas of Opportunity\n\n* Emerging Technology Integration - Enhance capabilities with AI and machine learning.\n* Market Expansion - Adapt for use in virtual reality (VR) \u0026 augmented reality (AR) to access new and growing markets.\n* Data Analytics Enhancement - Develop advanced software for better data analysis and visualization, adding value and creating new revenue streams.\n\n## Hardware Specifications\n\n* [ATmega2560](https://github.com/LasithaAmarasinghe/3D-Mapper/blob/main/data%20sheets/ATMEGA2560.PDF)\n* [CH340C USB to Serial Chip](https://github.com/LasithaAmarasinghe/3D-Mapper/blob/main/data%20sheets/CH340C%20USB%20to%20serial%20chip.PDF)\n* [I2C Multiplexer](https://github.com/LasithaAmarasinghe/3D-Mapper/blob/main/data%20sheets/tca9548a%20I2C%20multiplexer.pdf)\n* [Nema 17 Stepper Motors](https://github.com/LasithaAmarasinghe/3D-Mapper/blob/main/data%20sheets/NEMA17%20Stepper%20Motor.PDF)\n* [Micro Step Motor Drivers](https://github.com/LasithaAmarasinghe/3D-Mapper/blob/main/data%20sheets/TB6600-Micro%20Step%20Stepper-Motor-Driver.pdf)\n* [TOF Sensors](https://github.com/LasithaAmarasinghe/3D-Mapper/blob/main/data%20sheets/TOF.png)\n* [12V to 5V Buck Converter](https://github.com/LasithaAmarasinghe/3D-Mapper/blob/main/data%20sheets/R_78CK_0_5-DC_DC%20Converter.pdf)\n\n## Software Specifications\n\n* Arduino IDE\n* Solid Works\n* Altium\n* Python \n\n![Arduino](https://img.shields.io/badge/-Arduino-00979D?logo=Arduino\u0026logoColor=white)\n![Solidworks](https://img.shields.io/badge/Solid_Works_-red)\n![Altium](https://img.shields.io/badge/Altium_Designer_-%23A5915F?logo=altiumdesigner\u0026logoColor=white)\n![Python](https://img.shields.io/badge/python-3670A0?logo=python\u0026logoColor=FFFF00)\n![NumPy](https://img.shields.io/badge/numpy-%23013243.svg?logo=numpy\u0026logoColor=white)\n![pyvista](https://img.shields.io/badge/PyVista_-green?logoColor=white)\n![Matplotlib](https://img.shields.io/badge/matplotlib_-purple)\n![json](https://img.shields.io/badge/json_-black)\n![serial](https://img.shields.io/badge/serial_-blue)\n\n## PCB Design\n\n\u003cimg src=\"https://github.com/LasithaAmarasinghe/3D-Mapper/assets/106037441/d7e6ce52-1c89-4154-8b88-37388692e56b\" width=\"850\" height=\"550\"\u003e\n\n\n## PCB \n\n![PCB](https://github.com/LasithaAmarasinghe/3D-Mapper/assets/106037441/e6a24d2e-6db5-4a9c-af80-d481695acf72)\n\n## Solidworks Design\n\n![solidworks](https://github.com/LasithaAmarasinghe/3D-Mapper/assets/106037441/f35719a4-a017-4c51-9a2d-e31d81bae907)\n![Interior Design](https://github.com/LasithaAmarasinghe/3D-Mapper/assets/106037441/f78155a7-3207-4334-bf99-9af56c6035ed)\n![Side view](https://github.com/LasithaAmarasinghe/3D-Mapper/assets/106037441/9bda0ceb-6ee5-47a1-a3ce-7c367c91f589)\n\n## Team\n\n![team](https://github.com/LasithaAmarasinghe/3D-Mapper/assets/106037441/35031685-0640-4157-9b0c-df699e6310eb)\n\n## For More Information  \n\n- **[Design Document](Design_Document.pdf)**\n- **[Design Methodology Report](Design_Methodology_Report.pdf)**\n\n## License\n \n * This project is licensed under the MIT License. See the [LICENSE](MIT-LICENSE.txt) file for details.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flasithaamarasinghe%2F3d-mapper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flasithaamarasinghe%2F3d-mapper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flasithaamarasinghe%2F3d-mapper/lists"}