{"id":22316486,"url":"https://github.com/Chmatulo/Ultrasonic-Ranger-Sonar","last_synced_at":"2025-07-29T11:32:13.487Z","repository":{"id":264494551,"uuid":"893514072","full_name":"Chmatulo/Ultrasonic-Ranger-Sonar","owner":"Chmatulo","description":"Ultrasonic Ranger Sonar","archived":false,"fork":false,"pushed_at":"2024-12-25T23:26:03.000Z","size":210,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-26T03:28:53.031Z","etag":null,"topics":["arduino","csharp","grove","python","radar","ultrasonic-sensor"],"latest_commit_sha":null,"homepage":"","language":"Python","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/Chmatulo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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-11-24T16:33:47.000Z","updated_at":"2024-12-26T10:07:44.000Z","dependencies_parsed_at":"2024-12-26T00:23:55.566Z","dependency_job_id":"1231c721-eaec-4e38-9d5c-1ff35f6dec5d","html_url":"https://github.com/Chmatulo/Ultrasonic-Ranger-Sonar","commit_stats":null,"previous_names":["chmatulo/ultrasonic-ranger-radar","chmatulo/ultrasonic-ranger-sonar"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Chmatulo/Ultrasonic-Ranger-Sonar","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chmatulo%2FUltrasonic-Ranger-Sonar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chmatulo%2FUltrasonic-Ranger-Sonar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chmatulo%2FUltrasonic-Ranger-Sonar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chmatulo%2FUltrasonic-Ranger-Sonar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Chmatulo","download_url":"https://codeload.github.com/Chmatulo/Ultrasonic-Ranger-Sonar/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Chmatulo%2FUltrasonic-Ranger-Sonar/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267678448,"owners_count":24126333,"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","status":"online","status_checked_at":"2025-07-29T02:00:12.549Z","response_time":2574,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["arduino","csharp","grove","python","radar","ultrasonic-sensor"],"created_at":"2024-12-03T23:06:42.877Z","updated_at":"2025-07-29T11:32:13.474Z","avatar_url":"https://github.com/Chmatulo.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ultrasonic Ranger Sonar\n\nThis project is a sonar system that utilizes an ultrasonic sensor and a servo motor to scan the surroundings. The sonar system is controlled using C# and Python for data processing and visualization. The ultrasonic sensor measures the distance of objects, and the servo motor sweeps the sensor to create a 2D map of the environment using the pygame drawing library.\n\n\u003cp align=\"center\"\u003e\n  Sonar Build IRL using LEGOS\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/Sonar_Build.jpg\" style=\"width:500px;\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  Sonar Interface with detected object\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/Ultrasonic_Ranger_Sonar.png\" style=\"width:500px;\" /\u003e\n\u003c/p\u003e\n\n## Features\n\n• Distance Measurement: Use an ultrasonic sensor to measure the distance to nearby objects. \u003cbr\u003e\n• Scanning: A servo motor rotates the sensor to scan the surroundings. \u003cbr\u003e\n• Data Visualization: Display the detected distances in a visual sonar-style graph. \u003cbr\u003e\n• Multi-Language Support: C# for device control and Python for visualization. \u003cbr\u003e\n\n## Requirements\n\n### Hardware\n\nFor this project, I've used the Grove Ecosystem, so all the hardware/software corresponds to it. It is possible to avoid using the grove ecosystem, although the c# script won't be adapted to such hardware.\n\n• Computer (for running Python scripts for visualization) \u003cbr\u003e\n• Arduino UNO with USB-B cable \u003cbr\u003e\n• Arduino Grove base hat \u003cbr\u003e\n• Ultrasonic Sensor (e.g. Grove - Ultrasonic Ranger) \u003cbr\u003e\n• Servo Motor (e.g. Grove - Servo) \u003cbr\u003e \n• Grove - Universal 4 Pin Cables \u003cbr\u003e\n\n### Software\n\n• Code editor (e.g. VS Code) \u003cbr\u003e\n• Arduino IDE \u003cbr\u003e\n• Python 3.x \u003cbr\u003e\n• C# \u003cbr\u003e\n• pyserial module \u003cbr\u003e\n• pygame module \u003cbr\u003e\n• Grove Servo library \u003cbr\u003e\n• Grove Ultrasonic Ranger Library \u003cbr\u003e\n\n## Usage\n\nThe arduino communicates its recorded data through the COM3 serial port to the computer. \u003cbr\u003e\n\nTo start the program, upload the .ino script to the arduino and then close the IDE. Otherwise, the python script cannot read from the COM3 serial port as it is being used by an other program.\nNext, run the python script on your computer and a window with a sonar interface should appear (note that there is a 2 seconds cooldown to setup the ultrasonic ranger at exactly 0 degrees).\n\nFinally, enjoy your sonar.\n\n## Program\n\nYou can manually change the detection range of the ultrasonic ranger. To do so, go to the visualization.py file and change the detection_range var to whatever you want.\n\n## Contributing\nFeel free to open issues or create pull requests to suggest improvements!\n\n## License\nThis project is licensed under the MIT License. See the LICENSE file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FChmatulo%2FUltrasonic-Ranger-Sonar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FChmatulo%2FUltrasonic-Ranger-Sonar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FChmatulo%2FUltrasonic-Ranger-Sonar/lists"}