Git Product home page Git Product logo

acmeandroid's Introduction

AcmeAndroid

Module Title: Algorithms and Constructs

Assignment Type: Group Application development project

Project Title: AcmeAndroid

Project Date: 25/04/2019

Assignment Compiler: Mark Morrissey

Weighting: Marked out of 100, worth 50%

Due Date: 24/05/2019 - 23:55

Method of Submission: Moodle Submission

Feedback Method: moodle


Module Learning Outcome: 4. develop and implement custom algorithms and constructs for a wide variety of application-specific tasks, taking performance and system resources into consideration 5. employ a variety of different constructs and to implement and categorise different searching and traversal algorithms over said constructs


The Project

Group: max 4 people

create algorithms to:

Make an Android stand, walk and sit down with human-like movement.

Acme Robotics have developed an Android, in collaboration with their partners AndroidsRus, they have sourced the motors to be used to articulate the android, along with a cheap power plant. You have been tasked with designing and testing the algorithms to be used in the project.

Android articulations :

Ankle : 30 deg. Voltage required : 3 volts Knee : 90 deg. Voltage required : 3 volts Hip : 90 deg. Voltage required : 4 volts Waist : 30 deg. rotation / 90 deg. flexion. Voltage required : 4 volts Wrist : 180 deg. Voltage required : 2 volts Elbow : 140 deg. Voltage required : 3 volts Shoulder : 360 rotation / 180 flexion. Voltage required : 2 volts Neck : 30 deg rotation. Voltage required : 3 volts Head : 180 deg rotation / 180 deg. flexion. Voltage required : 3 volts

each articulation is controlled by a single motor each motor uses a max of 4 volts per second to operate and can move 15 degrees per second - if movement is more than 60% of available motion for a motor an additional 3 volts are required.

once a motor is moved the Android requires 1 volt to hold all motors in place(must always be 1 volt in battery).

the power plant is a cheap model of lithium battery from AndroidsRus and can only produce 8 volts, its recovery time after discharging is 3 seconds.(2.6 volts per second)

Starting point: The Android is placed on a chair: Make it stand Make it walk Make it sit down

If the android is without power it will fall over and break and cost millions of euro to replace. you will need to create initial motor positions for poses.

   Hints : (put program thread to sleep to simulate real time:  Thread.sleep(miliseconds);  )

Your algorithm design goal is to produce the most efficient algorithms for each pose transition. Research human movement and gait analysis as a means of interpreting the movement of your motors. Ensure that the development process is well documented (show all drawings / calculations / research articles ect..). Spend sufficient time on the development of the format of the program output to allow a user to view the progress of pose transitions (e.g. have stage progress / broken down groups of movements)

Your submission must include: (one submission per group) Design document – analysis, class diagram, reasoning behind your design choices .Details of the research carried out / brain storming sessions / collective work. Personal reports – individual document detailing your thoughts on the design and a reflection on the process (problems / what you would do differently next time). This document saved as : your name_your student number. Netbeans project folder – working program (including dependencies if any, and A.P.I. and class diagrams) One submission file – include all material in one zip file to be uploaded to moodle.

Notes : (program must run, no debugging will be attempted) Anything other than a Netbeans project will not be graded Along with your report / documentation you must only submit a netbeans project folder; all submitted materials should be compressed into a folder named after a student and student number : eg first name_second name_studentNo.zip. Documentation: API documentation can be generated from within netbeans (uses comments on your code) Requirements gathering and analysis (part of design doc):

Marking scheme summary Object Oriented design 0 – 10 marks Algorithmic design 0 – 35 marks Requirements gathering / analysis report /research 0 – 20 marks Program functionality / fit for purpose 0 – 35 marks Total 100%

acmeandroid's People

Contributors

eduardokzn avatar balays33 avatar michaelpro89 avatar jomarmosquera avatar jlopezsantacruz avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.