{"id":21207924,"url":"https://github.com/junxian428/ubtech_car","last_synced_at":"2025-03-14T23:28:43.379Z","repository":{"id":168078366,"uuid":"643697504","full_name":"junxian428/UBTech_car","owner":"junxian428","description":"Education Obstacle Avoidance Car. Demo: https://youtube.com/shorts/imP9IYtktDo?feature=share","archived":false,"fork":false,"pushed_at":"2023-05-22T05:11:47.000Z","size":23,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T15:50:14.098Z","etag":null,"topics":["education","obstacle-avoidance","rc-car"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/junxian428.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2023-05-22T00:51:51.000Z","updated_at":"2023-05-22T05:27:08.000Z","dependencies_parsed_at":null,"dependency_job_id":"a4ef7940-c959-46aa-9cc1-edea0a777782","html_url":"https://github.com/junxian428/UBTech_car","commit_stats":null,"previous_names":["junxian428/ubtech_car"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/junxian428%2FUBTech_car","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/junxian428%2FUBTech_car/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/junxian428%2FUBTech_car/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/junxian428%2FUBTech_car/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/junxian428","download_url":"https://codeload.github.com/junxian428/UBTech_car/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243662579,"owners_count":20327252,"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":["education","obstacle-avoidance","rc-car"],"created_at":"2024-11-20T21:00:08.050Z","updated_at":"2025-03-14T23:28:43.373Z","avatar_url":"https://github.com/junxian428.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# UBTech_car\n\n#include \"uKitExplore2En.h\"\n\nvolatile int angle;\n\nvoid setup() {\n    Initialization();\n    angle = 0;\n    setServoAngle(11,0,1000);\n    delay(1000);\n\n}\n\nvoid loop() {\n    Serial.print(readUltrasonicDistance(1));\n    setRgbledColor(255,0,255);\n\n    if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 0))) {\n        setMotorTurnAdj(1,0,0xffff);\n        setMotorTurnAdj(2,0,0xffff);\n        setServoAngle(11,-90,500);\n        delay(500);\n        angle = -90;\n        if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == -90))) {\n            setMotorTurnAdj(1,0,0xffff);\n            setMotorTurnAdj(2,0,0xffff);\n            setServoAngle(11,-80,500);\n            delay(500);\n            angle = -80;\n            if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == -80))) {\n                setMotorTurnAdj(1,0,0xffff);\n                setMotorTurnAdj(2,0,0xffff);\n                setServoAngle(11,-70,500);\n                delay(500);\n                angle = -70;\n                if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == -70))) {\n                    setMotorTurnAdj(1,0,0xffff);\n                    setMotorTurnAdj(2,0,0xffff);\n                    setServoAngle(11,-60,500);\n                    delay(500);\n                    angle = -60;\n                    if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == -60))) {\n                        setMotorTurnAdj(1,0,0xffff);\n                        setMotorTurnAdj(2,0,0xffff);\n                        setServoAngle(11,-50,500);\n                        delay(500);\n                        angle = -50;\n                        if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == -50))) {\n                            setMotorTurnAdj(1,0,0xffff);\n                            setMotorTurnAdj(2,0,0xffff);\n                            setServoAngle(11,-40,500);\n                            delay(500);\n                            angle = -40;\n                            if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == -40))) {\n                                setMotorTurnAdj(1,0,0xffff);\n                                setMotorTurnAdj(2,0,0xffff);\n                                setServoAngle(11,-30,500);\n                                delay(500);\n                                angle = -30;\n                                if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == -30))) {\n                                    setMotorTurnAdj(1,0,0xffff);\n                                    setMotorTurnAdj(2,0,0xffff);\n                                    setServoAngle(11,-20,500);\n                                    delay(500);\n                                    angle = -20;\n                                    if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == -20))) {\n                                        setMotorTurnAdj(1,0,0xffff);\n                                        setMotorTurnAdj(2,0,0xffff);\n                                        setServoAngle(11,-10,500);\n                                        delay(500);\n                                        angle = -10;\n                                        if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == -10))) {\n                                            setMotorTurnAdj(1,0,0xffff);\n                                            setMotorTurnAdj(2,0,0xffff);\n                                            setServoAngle(11,10,500);\n                                            delay(500);\n                                            angle = 10;\n                                            if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 10))) {\n                                                setMotorTurnAdj(1,0,0xffff);\n                                                setMotorTurnAdj(2,0,0xffff);\n                                                setServoAngle(11,20,500);\n                                                delay(500);\n                                                angle = 20;\n                                                if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 20))) {\n                                                    setMotorTurnAdj(1,0,0xffff);\n                                                    setMotorTurnAdj(2,0,0xffff);\n                                                    setServoAngle(11,30,500);\n                                                    delay(500);\n                                                    angle = 30;\n                                                    if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 30))) {\n                                                        setMotorTurnAdj(1,0,0xffff);\n                                                        setMotorTurnAdj(2,0,0xffff);\n                                                        setServoAngle(11,40,500);\n                                                        delay(500);\n                                                        angle = 40;\n                                                        if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 40))) {\n                                                            setMotorTurnAdj(1,0,0xffff);\n                                                            setMotorTurnAdj(2,0,0xffff);\n                                                            setServoAngle(11,50,500);\n                                                            delay(500);\n                                                            angle = 50;\n                                                            if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 50))) {\n                                                                setMotorTurnAdj(1,0,0xffff);\n                                                                setMotorTurnAdj(2,0,0xffff);\n                                                                setServoAngle(11,60,500);\n                                                                delay(500);\n                                                                angle = 60;\n                                                                if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 60))) {\n                                                                    setMotorTurnAdj(1,0,0xffff);\n                                                                    setMotorTurnAdj(2,0,0xffff);\n                                                                    setServoAngle(11,70,500);\n                                                                    delay(500);\n                                                                    angle = 70;\n                                                                    if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 70))) {\n                                                                        setMotorTurnAdj(1,0,0xffff);\n                                                                        setMotorTurnAdj(2,0,0xffff);\n                                                                        setServoAngle(11,80,500);\n                                                                        delay(500);\n                                                                        angle = 80;\n                                                                        if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 80))) {\n                                                                            setMotorTurnAdj(1,0,0xffff);\n                                                                            setMotorTurnAdj(2,0,0xffff);\n                                                                            setServoAngle(11,90,500);\n                                                                            delay(500);\n                                                                            angle = 90;\n                                                                            if (((readUltrasonicDistance(1) \u003c 25)\u0026(angle == 90))) {\n                                                                                setMotorTurnAdj(1,0,0xffff);\n                                                                                setMotorTurnAdj(2,0,0xffff);\n                                                                                setServoAngle(11,0,500);\n                                                                                delay(500);\n                                                                                angle = 0;\n\n                                                                            }\n\n                                                                        }\n\n                                                                    }\n\n                                                                }\n\n                                                            }\n\n                                                        }\n\n                                                    }\n\n                                                }\n\n                                            }\n\n                                        }\n\n                                    }\n\n                                }\n\n                            }\n\n                        }\n\n                    }\n\n                }\n\n            }\n\n        }\n\n    }\n\n    if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == 0))) {\n        setMotorTurnAdj(1,-15,0xffff);\n        setMotorTurnAdj(2,15,0xffff);\n        if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == -90))) {\n            setMotorTurnAdj(1,0,0xffff);\n            setMotorTurnAdj(2,15,0xffff);\n            setServoAngle(11,0,500);\n            delay(500);\n            angle = 0;\n            if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == -80))) {\n                setMotorTurnAdj(1,0,0xffff);\n                setMotorTurnAdj(2,15,0xffff);\n                setServoAngle(11,0,500);\n                delay(500);\n                angle = 0;\n                if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == -70))) {\n                    setMotorTurnAdj(1,0,0xffff);\n                    setMotorTurnAdj(2,15,0xffff);\n                    setServoAngle(11,0,500);\n                    delay(500);\n                    angle = 0;\n                    if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == -60))) {\n                        setMotorTurnAdj(1,0,0xffff);\n                        setMotorTurnAdj(2,15,0xffff);\n                        setServoAngle(11,0,500);\n                        delay(500);\n                        angle = 0;\n                        if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == -50))) {\n                            setMotorTurnAdj(1,0,0xffff);\n                            setMotorTurnAdj(2,15,0xffff);\n                            setServoAngle(11,0,500);\n                            delay(500);\n                            angle = 0;\n                            if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == -40))) {\n                                setMotorTurnAdj(1,0,0xffff);\n                                setMotorTurnAdj(2,15,0xffff);\n                                delay(5000);\n                                setServoAngle(11,0,500);\n                                delay(500);\n                                angle = 0;\n                                if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == -30))) {\n                                    setMotorTurnAdj(1,0,0xffff);\n                                    setMotorTurnAdj(2,15,0xffff);\n                                    setServoAngle(11,0,500);\n                                    delay(500);\n                                    angle = 0;\n                                    if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == -20))) {\n                                        setMotorTurnAdj(1,0,0xffff);\n                                        setMotorTurnAdj(2,-15,0xffff);\n                                        delay(5000);\n                                        setServoAngle(11,0,500);\n                                        delay(500);\n                                        angle = 0;\n                                        if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == -10))) {\n                                            setMotorTurnAdj(1,0,0xffff);\n                                            setMotorTurnAdj(2,15,0xffff);\n                                            setServoAngle(11,0,500);\n                                            delay(500);\n                                            angle = 0;\n                                            if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == 10))) {\n                                                setMotorTurnAdj(1,15,0xffff);\n                                                setMotorTurnAdj(2,0,0xffff);\n                                                setServoAngle(11,0,500);\n                                                delay(500);\n                                                angle = 0;\n                                                if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == 20))) {\n                                                    setMotorTurnAdj(1,-15,0xffff);\n                                                    setMotorTurnAdj(2,0,0xffff);\n                                                    setServoAngle(11,0,500);\n                                                    delay(500);\n                                                    if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == 30))) {\n                                                        setMotorTurnAdj(1,-15,0xffff);\n                                                        setMotorTurnAdj(2,0,0xffff);\n                                                        setServoAngle(11,0,500);\n                                                        delay(500);\n                                                        angle = 0;\n                                                        if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == 40))) {\n                                                            setMotorTurnAdj(1,-15,0xffff);\n                                                            setMotorTurnAdj(2,0,0xffff);\n                                                            setServoAngle(11,0,500);\n                                                            delay(500);\n                                                            angle = 0;\n                                                            if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == 50))) {\n                                                                setMotorTurnAdj(1,-15,0xffff);\n                                                                setMotorTurnAdj(2,0,0xffff);\n                                                                setServoAngle(11,0,500);\n                                                                delay(500);\n                                                                angle = 0;\n                                                                if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == 60))) {\n                                                                    setMotorTurnAdj(1,-15,0xffff);\n                                                                    setMotorTurnAdj(2,0,0xffff);\n                                                                    delay(5000);\n                                                                    setServoAngle(11,0,500);\n                                                                    delay(500);\n                                                                    angle = 0;\n                                                                    if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == 70))) {\n                                                                        setMotorTurnAdj(1,-15,0xffff);\n                                                                        setMotorTurnAdj(2,0,0xffff);\n                                                                        setServoAngle(11,0,500);\n                                                                        delay(500);\n                                                                        angle = 0;\n                                                                        if (((readUltrasonicDistance(1) \u003e= 25)\u0026(angle == 80))) {\n                                                                            setMotorTurnAdj(1,-15,0xffff);\n                                                                            setMotorTurnAdj(2,0,0xffff);\n                                                                            setServoAngle(11,0,500);\n                                                                            delay(500);\n                                                                            angle = 0;\n\n                                                                        }\n\n                                                                    }\n\n                                                                }\n\n                                                            }\n\n                                                        }\n\n                                                    }\n\n                                                }\n\n                                            }\n\n                                        }\n\n                                    }\n\n                                }\n\n                            }\n\n                        }\n\n                    }\n\n                }\n\n            }\n\n        }\n\n    }\n\n\n}\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjunxian428%2Fubtech_car","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjunxian428%2Fubtech_car","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjunxian428%2Fubtech_car/lists"}