[[TOC(Other/Summer/2020/SelfDrivingVehicle/*, depth=1, heading=Self-Driving Vehicle)]] = Self-Driving Vehicle = **WINLAB Summer Internship 2021** **Group Members:** Zhuohuan Li, Sandeep Alankar, Anthony Siu, Adas Bankauskas, Malav Majmudar, Abia Mallick, Lohith Bodipati, Rohan Vij, Aayush Agnihotri == Project Website == https://sa14544.wixsite.com/self-driving-vehicle == Project Objective == The goal of this project is to build a fully-functional self-driving car. The project includes development of ~1/14 scale vehicles for use as a remote self-driving car testing platform, as well as a virtual simulation environment which will model both the physical vehicles and the testbed environment. Robot Operating System (ROS) will be used for both halves of the project, with the simulation running in Gazebo. There are several objectives for this project: * Design and implementation of additional sensors for existing vehicles to allow for remote experimentation * Incorporation of ROS control into existing car software * Use of AI/machine learning algorithms for self-driving behavior * Building the actual vehicle at WINLAB and testing its autonomy in a real environment == Week 1 Activities == * Create ORBIT/COSMOS accounts and become familiar with reserving nodes and performing basic Linux operations * Read about how to run ROS and Gazebo Simulator on local machines * [https://docs.google.com/presentation/d/18HOzxzMpbICPZUL5aVCChpJEtbcpmwP7dl5NgV5Bkcw/edit?usp=sharing Week 1 Presentation] == Week 2 Activities == * Work on ROS tutorial with PuTTY - Reserve nodes on intersection and retrieve/plot data from turtlesim * Learn about remote graphical access and how to X forward using correct ssh commands - Create X image for ROS simulations * Learn how to duplicate PuTTY session with tmux and practice basic tmux shortcuts * [https://docs.google.com/presentation/d/1seyX6rUHb5oGcmB47eubN0xHBRvH6qNv_Y_8ZaEXxYM/edit?usp=sharing Week 2 Presentation] == Week 3 Activities == * Finish ROS tutorial with PuTTY * Working on Gazebo Simulator tutorial - Learn how to add new model, build/modify robot, improve model appearance with meshes, etc. * Create project page on ORBIT wiki, add objective and weekly summaries * Publish project website with links to weekly presentations * [https://docs.google.com/presentation/d/142n-tBPpN4X8mRPS-Zo1r6YcKNqexb3edhEAtVHbD-E/edit?usp=sharing Week 3 Presentation] == Week 4 Activities == * Continue working on Gazebo Simulator tutorial - Learn how to implement DEMs, create populations of models, build multi-leveled and multi-layered simulation environment, etc. * Configure Chrome remote desktop to access Gazebo from local machines - Load self driving image onto nodes and learned how to properly save node image * [https://docs.google.com/presentation/d/1h_GanEULzRQezcS2x6pzxtwP77Y5vuO6V2QnWjqdF1c/edit?usp=sharing Week 4 Presentation] == Week 5 Activities == * Finish Gazebo tutorial - Learn how to record and playback simulations, apply force and/or torque to models, connect to Player, use physics engines to achieved desired behavior, etc. * Access Gazebo code from previous year's GitLab repository - Look over algorithms and simulations built for vehicles with Ackermann steering * [https://docs.google.com/presentation/d/1WYysF7vQmwatsnNa1SdJIfFCdX3fW8xtgVgws69wA-M/edit?usp=sharing Week 5 Presentation] == Week 6 Activities == * Visit WINLAB - Examine physical model's hardware and compare with previous rigid steering models * Create catkin workspace and control Gazebo robot through terminal commands * Test different neural network architectures to maximize steer prediction accuracy * [https://docs.google.com/presentation/d/19DkfsdHMdiDMiXFo6V_-7kE71wnHfAOk8LTcMSl4gCo/edit?usp=sharing Week 6 Presentation] == Week 7 Activities == * Accessed four RealSense cameras positioned around city intersection * Created 3D image from each perspective and started to experiment with combining images by creating and transforming individual point clouds * Connected to Pioneer 3-DX robot remotely from laptops * Installed RosAria and used catkin workspace to build and run the RosAria node * [https://docs.google.com/presentation/d/1XCZ1o7t3ecQSjcxLQeiItjYrh9w-aaamZK9xzfn-9SA/edit?usp=sharing] == Week 8 Activities == * At WINLAB, presented operation of Pioneer robot to Rutgers film crew * Connected to Pioneer 3-DX and ran appropriate scripts to steer robot through model intersection * Configured wireless connection and drove Pioneer wirelessly alongside smaller mobile robots * Working on creating a direct connection between Pioneer node and Realsense to view continuous RealSense camera feed while driving * [https://docs.google.com/presentation/d/1ZIohasgUZZoLfGq9bMWvE5k2TyjnHLJC6fIUdeQhH0U/edit?usp=sharing]