Tuesday, December 29, 2015

A Survey of Available Games for Autistic Children and Others

During your study of the state of the art games for autistic children, you might want to complete a few tasks:
  1. Autistic Games Apps: Could you come up a detailed survey of all the available games, and summarize your results in a table? You can reference to the survey done by Group 8 & 9 as an example. The table should include columns such as game names, categories, platforms, descriptions, companies, prices, websites, your evaluations, etc.
  2. Non-Computer Autistic Games: Could you come up a survey of all the available non-computer games, and summarize your results in a table? The table should include columns such as game names, categories, descriptions, companies, prices, what can you do better using computer, etc.
  3. General-Purpose Games: I am also curious about info about general purpose games. Is there any statistics about what are the favorite general purpose games that autistic children played? If yes, are they beneficial to them according to the categories: “coping with change”, “matching emotions”, “finding a route”, and “making eye contact”. You can make a table to summarize your results. You may learn important lessons from those apps.
  4. Customer Input/Feedback: In addition, could you search for some nearby organization serving autistic children? Can you visit them to get some insight? You might want to interview special education teachers in our school who had previous experiences in this area. Once you have finish the apps, what are the channels to distribute the apps to autistic children and evaluate their effectiveness?
These surveys and the input/feedback of autistic children and educators will form the foundation of your apps. We will discuss your results after the break.

Sunday, December 20, 2015

STEM Project Proposal

Project Proposal:
  • Our new proposed project is the creation of video games intended for autistic children. The idea is to study the common challenges that autistic children face and create games to help them learn how to deal with these problems. Another thought on this project is to possibly expand the project to other mental disorders common in children, depending on how long work on games for autistic children takes.Once we complete at least one game, we plan to create a website using awardspace.com which will allow us to post these games. Additionally, our games will function both on a computer as well as on a mobile touchscreen device.
Plan:
Week of:
12/20 - 12/26: Conduct research on autism in children, as well as a state of the art research. Create several ideas for games.
12/27 1/2: Assign game to each team member. Both of us will draft plans for our games, like a checklist. We will subsequently begin work on the games.
Beyond this, a schedule is hard to foresee, as we don’t yet have an idea of how complex our games may end up being. In the beginning of week 12/27 - 1/2 we will add make our schedule more specific since we’ll know what our games will be.

We’ve begun research on Autism and the state of the art already, here is what we’ve found:

Characteristics of Autism include difficulties with social interaction, communication, as well as behavioural issues. More specifically:

Social Interaction:
  • limited use and understanding of nonverbal communication such as eye gaze, facial expression and gesture
  • difficulties forming and sustaining friendships
  • lack of seeking to share enjoyment, interests and activities with other people
  • difficulties with social and emotional responsiveness
Communication:
  • delayed language development
  • difficulties initiating and sustaining conversations
  • stereotyped and repetitive use of language such as repeating phrases from television
Behavioural:
  • unusually intense or focused interests
  • stereotyped and repetitive body movements such as hand flapping and spinning
  • repetitive use of objects such as repeatedly switching lights on and off or lining up toys
  • insistence on sticking to routines such  travelling the same route home each day and doing things in exactly the same order every time
  • unusual sensory interests such as sniffing objects or staring intently at moving objects
  • sensory sensitivities including avoidance of everyday sounds and textures such as hair dryers, vacuum cleaners and sand
  • intellectual impairment or learning difficulties

As part of our state of the art research we came across this website:
This site has five games available, all intended to help autistic children develop independent living skills under the categories: “coping with change”, “matching emotions”, “finding a route”, and “making eye contact”, which the site states are all common challenges faced by autistic children.

Sunday, December 13, 2015

Weekly Progress Report 12/7 - 12/13

Progress:
- This past week we haven't made much progress, as we've actually been set back. We had Mr. Lin check over the third problem (the second 2D one) on Friday, and about a third of the way through it, we had made an error that made the rest of our solution incorrect. We're still trying to figure out a solution for the rest of it now. We also had Mr. Lin explain the orientation of the dimensions for the 3D problems, so we're working on tackling those as well.

Problems:
- Part of our problem this past week was Henry being sick all week, which slowed down work. Besides that our only problem was the set back with us having faults in our solution to the third problem.

Plan:
- Our plan this week is to just continue work on these problems, ideally finish them. 

Sunday, December 6, 2015

Weekly Progress Report 11/30 - 12/6

Progress:
-  This past week we worked on the physics problems given to us by Mr. Lin. They wound up being more complicated than we originally thought, but we've made significant headway, now being halfway done with them. They didn't require anything too complex, but the challenge was figuring out what we needed to use to solve each part. Solving these problems and more like them will gradually build up to doing the math behind the real life situation (a drone defense system).
Problem:
- Our problem this past week has been with the 3-D problems. We had finished one of the two 3-D problems only to later learn after reviewing it that none of our work really made sense. We're finding it hard to decipher the diagrams for the 3-D pictures as far as where each axis is pointing. We need Mr. Lin to explain this to us tomorrow. Unfortunately we are currently behind our scheduled plan for completing these problems.
Plan:

- This week we hope to have Mr. Lin approve the two problem we've already done, as well as help us understand the 3-D ones so we can complete those as well. Once those are done, we plan to go to the next level with solving these problems, whether that's adding elements like air resistance or combining the situations to include a full interception device (a camera and launcher).

RE: Patent Search

Excellent patent list and outstanding analysis. Even though the perfect intercepting system may have to include many existing patents, it doesn't mean that there is no room for improvement in each aspect of the system. Especially when you start the implementation process, you will get more insights into the potential problems of existing methods. Any problem can lead to a new invention!  

Sunday, November 29, 2015

Weekly Progress Report 11/23 - 11/29

Progress
  • The vast majority of this week's time was dedicated to the collection of patents relating to our project. We found interesting things such as lockheed martin and other major military corporations making most of the panel claims in these fields. It was also clear that a lot of the approaches that other people took weren't specific to commercial drones. They were more focused on military grade drones that could potentially carry payloads. This is evident because they were focusing mainly on doing one of two things; shooting down another missile, or using a net. However, all of this was very relevant and useful information that we found.. There are plenty of things which we found, such as descriptions of how to deal with the rapid aiming and launching quickly in order to intercept an object that. This past week has consisted of mainly the patent search, along with work on physics problems.

Problem
  • Discovering that our project has become a proof of concept requires us to dramatically shift our focus and pick up the pace since all the time spent on designs and plans for a physical mechanism was a waste. The physics examples provided to us by Mr. Lin are quite complicated, and with our basic (albeit a bit rusty) physics knowledge, it is quite hard. However, once we are able to understand thoroughly how do get the answers and why the answers is correct, we will be knowledgeable enough to figure out which equations would be required in order to figure out the trajectory of the drone. Then once we have the equations set, we will know what information we will require of Adnan’s visual system.

Plan

  • This coming week, we plan to finish the physics problems given to us by Mr. Lin, find others online, and do those in order to ensure that we have a strong understanding of the math behind projectile motion. The following week, we plan to look into adding “real-world” variables into our physics problems, such as air resistance and drag.

Sunday, November 15, 2015

Weekly Progress Report 11/9 - 11/15

Progress:
-         This week we completed further research on both the launching mechanism and easyC V4. As for the launcher, we’ve completely ruled out any electromagnetic mechanism as all research indicates that currently there is no technology that allows for an electromagnet strong enough to pull something towards it from very far. Today, Mr. Lin purchased our previous materials list, shown in a prior blog post. As for easyC, we’re still working through reading and watching tutorials.
Problems:
-         Not long after purchasing the materials for the launching mechanism, we asked Mr. Lin if we would be able to bring in a power drill to work on building the launching mechanism. We then received a copy of the school code on what’s defined as a weapon, and we may have to scrap our launcher design again. We will meet with Mr. Lin ASAP to discuss this.
Plan:
-         For this week we plan to start work on the launcher, possibly the robot as well. We also plan to continue our easyC research. The launcher assembly will depend on what we discuss with Mr. Lin regarding the school’s rules.


Sunday, November 8, 2015

Weekly Progress Report 3 11/2-11/8

Progress:
  • We have investigated into the actual coding part of the project and have received some helpful links from Mr. Lin. However it seems that soon tutorial support for this program will terminate, so we will have to quickly assess the situation. Currently we are still looking into this program, which we think will serve our needs. EasyC V4 for the Cortex seems to be able to control up to 10 motors on a VEX robot in real-time which would work perfectly for what we need to do. We are in the process of learning this software. We are also working on a solution to an actual launching mechanism.


Problems:
  • We are still struggling to come up with a plan to incorporate a latch mechanism into our projectile launcher which would allow us to quickly fire in repeated succession. We also face uncertainty on whether or not the EasyC V4 will be able to do what we need it to.


Plans:


  • We will further discuss the possibilities of using the program Mr. Lin recommended to us and we will continue look for alternatives just in case the program doesn't fit our needs. Currently we are reading into all the supporting documents of this program to see if the program has the function of reading data files and thus acting upon them.  We also plan to test the software with a robot to see how the real time control works

Tuesday, November 3, 2015

RE: Weekly Progress Report

Just came across a post talking about how to control a Vex Cortex with a computer. It may not be exactly what you want, however, it provides a way to integrate the whole system together.
Our VEXnet system is built with the idea of controlling a robot with a combination of pre-loaded autonomous code and driver control with the use of a transmitter (joystick), not from a computer.
However if you use easyC V4 software to program the cortex, you will have an option available that will allow you to control your robot or motors directly from your PC. The function is called "On-Line Window" and it will allow you to control up to ten motors in different speeds, as you will be able to do all this from a computer without the need of applying input into the transmitter (robotics teams use this function to troubleshoot motor ports). Also it will be wireless.
Here is a link where you can download a free version for easyC V4: http://www.intelitekdownloads.com/easyCV4/
Also it doesn't matter if you use an old cortex, it will do the same function.
The system requirements for easyC V4 is:

Sunday, November 1, 2015

Weekly Progress Report - 10/25-11/1

Progress:
This week we focused on figuring out how and in what format data would be transferred to the Cortex Micro controller that will be on our robot launching system. Since the data processing and conversion is really Team 2's project, we established that our plan is to have Team 2 convert the data they gather via their vision system to numbers (measurements on distance, angle, predicted location, etc.) and then have our RobotC code reference these numbers to influence how the robot will move to accurately fire a shot at the drone.
We also decided that at least initially, our robot's cortex micro controller will be connected to a laptop via a USB connection; worrying about a wireless connection is worrying too far ahead in our project.
Problem:
An immediate risk we realized is the compatibility of software between RobotC and whatever software Team 2 ends up using. Our initial thoughts were that the data processing software Team 2 uses will be able to export the numbers/measurements we need onto a .txt file and our RobotC would pull numbers from that file. Team 2 will ultimately have to plan to fit this requirement or come up with an alternate solution. Another possible risk is that the computer won't be able to process all the data and convert it and then send the information to the Robot quickly enough.
Plan:
This coming week, we plan to re-approach the problem of our actual launching method. Two weeks ago, Mr. Lin found fatal flaws in all our ideas and left us with a lot of problems to try and figure out. This week will conduct further research to try and find a feasible launching method. We will further research electromagnetism, and how gun's fire with a latch system. Our goal is to figure out a method and a materials list by next Sunday so we can keep this project moving.

Sunday, October 25, 2015

Weekly Progress Report Part 2 10/18 - 10/24



This past Thursday, we met with Mr. Lin and succeeded in creating a block system diagram which we will follow in order to create and connect the launcher to the vision system. We decided which point would be the divider in what our group will do and what the vision system will do.  We came to the agreement that we need to figure out first how we are actually going to receive the data being sent from the vision group (as the computer will already have processed the information and have sent the velocity and other info such as projected position). Thus we really need to look into the wireless receiving capabilities of the cortex micro controller and see if we can send the info to the cortex micro controller via some open source method. If we can’t find an open source method to do so then we will look to see if someone has figured out how to hack the cortex micro controller to give it data receiving capabilities.  If that path fails then we will have to see if something has been done on the PIC micro controller as it has been around much longer thus it is much more likely that someone has either hacked it or there is an open source method for receiving data.  Then we need to get the micro controller to process the data and send the corresponding command to the launcher and have it fire at the projected position of the drone. We will proceed by editing our Gantt chart and making progress on our task.

Saturday, October 24, 2015

Launcher Design flaws (Weekly Progress part 1)

RobotModel1.JPG
Initial launcher design

We met with Mr. Lin this week to discuss the materials list we had posted recently. He had some concerns with the design of our launcher. Firstly, the connection between the pipe that would hold ammunition and the main pipe had a very small amount of surface area, which would make it a weak connection. This would hold some risk in the future, as it might be easily breakable. A possible alternative to this was using a T shaped connector, and attaching pipes to both sides of that to act as the barrel (this is shown on the left side of the white board). But then there's the problem of there not being a smooth connection between all three pipe pieces.
Secondly, there was the problem of the triggering mechanism. The original design was to use a motor powered arm to push back a lever, storing potential spring energy in a spring at the end of the main pipe, then the arm would move back forward, releasing the lever and therefore the spring. Mr. Lin pointed out that the problem with this was that it would require a lot of force to push back that lever, making it a slow process to trigger the launcher. Slow firing/reload speed would be a major risk later on; if our launcher missed its first shot it might be too late to fire a second one. Mr. Lin suggested that we look into a "latch" firing system, like ones that are used in fire arms. They don't require a lot of force to fire, and are therefore much faster.

Saturday, September 26, 2015

RE: STEM Team 3 Gantt Chart

Feedback:

  1. From "activities" point of view, your Gantt Chart demonstrates your understanding of problem solving skills by listing the meaningful activities to approach your final goal step-by-step. Though at this initial stage, there are things still unknown, some problems may be hidden, and a few tasks may be underestimated, you can always refine your Gantt Chart regularly to keep it meaningful throughout the project. 
  2. Your Gantt Chart did not assign resource and dependency. Without clearly assignments, it's hard to determine whether you have fully optimized your schedule through "parallel working", or some overlapping tasks are actually feasible.
  3. I suggest that you refine your Gantt Chart by adding those assignments, and I will discuss more details with you in class. 
  4. In the mean time, you should start following your Gantt Chart and continue working on your project!

Sunday, September 20, 2015

RE: Initial Planning & Coordination


  • Project Description & Merits
Describe the project in your own words and list the possible contribution your project can have to advance the field of STEM or solve societal problems.
   - Our project is to design and develop a method of neutralizing an enemy drone, ideally without damaging it. The contributions out project could make to the field of STEM depends on the method we end up using to take down drones. However, the societal problems to be solved are the possible problems we may face in the future where drones are a big part of society, they could easily be used illegally; a method of stopping them is necessary.
  • The original goal is not "without damaging" the drone, but not damaging the buildings or hurting people in the intercepting process. This goal has implications to the material and speed of the projectile.
  • Group/Team Communication
Who will be involved in your project (team) and relevant projects (group)? How to communicate effectively with each other? What are the tools for project collaboration?
    - Our team consists of Henry and Eduardo, linked to the group of Adnan and Noah. A big goal in our project might be to make the drone neutralization autonomous and in order to do that, visual detection would be necessary, that's where Adnan and Noah come in. Discussion on how to develop a detection method would be how we collaborated. We'd need to update each other on milestones.
  • Between team 2 and your team, you should define the hardware/software interface between your two systems clearly early on. It includes things such as 
    • architecture: are both systems controlled by a single microcontroller, or both of them have their own microcontrollers and communicate to each other through some communication channel (and what's the physics communication channel?).
    • What are the data (e.g., distance, 3D angles), clock, and control signals between the two system?
    • What are the timing requirements (e.g., target location data needs to be updated every 1ms) for the communication?   
 
****** MISSING  Prior Work/Resource Inventory SECTION ******
 
  • Technology Analysis
Identify the scientific and technical knowledge/skills involved in your project.
     - The knowledge involved in our project will vary depending on which path we go down for the take-down method. The definitely necessary knowledge includes a basic understanding of physics, VEX robot design and programming using robot c, as well as Parrot Drone controls whether manually or autonomously.
  • Should be more specific. For example, if one of the options is shooting water packet/stream, you need to know the physics of projected water packet/stream. If another option is shooting ping-pong balls, you need to know the physics of a flying pin-pong ball in air (not ideal case any more). 
  • Competence
Identify skill sets, technical competence in your group, and list the missing ones which need to be acquired.
     - Again, this depends on which method we decide to attempt. However, we have a working knowledge of both robot c and the drone programming which is similar to python. What's missing is  sufficient PID controller knowledge. 
  • Safety
      - No risk.
  • Both a flying drone and a projectile shooter have potential safety threats. You need to put that into your consideration at all time during the whole project course.
  • Equipment, materials & budget
    - Equipment includes a parrot drone, VEX robot kit, laptop. It's unclear if any items will need to be purchased.
  • So, you need to make a list of key components/parts, and conduct an inventory on Lab supplies.
  • If Vex robotics system is not good enough for your project, you should identify other parts (such as high-speed/torque mortors) and kits.  
  • Schedule
    - Our current main goal is to determine which area of drone take down we'd like to pursue, and then make a schedule for the coming weeks of working on that. 
  • Star working to create a meaningful schedule!

Sunday, September 13, 2015

Initial Planning & Coordination


  • Project Description & Merits
Describe the project in your own words and list the possible contribution your project can have to advance the field of STEM or solve societal problems.
   - Our project is to design and develop a method of neutralizing an enemy drone, ideally without damaging it. The contributions out project could make to the field of STEM depends on the method we end up using to take down drones. However, the societal problems to be solved are the possible problems we may face in the future where drones are a big part of society, they could easily be used illegally; a method of stopping them is necessary.
  • Group/Team Communication
Who will be involved in your project (team) and relevant projects (group)? How to communicate effectively with each other? What are the tools for project collaboration?
    - Our team consists of Henry and Eduardo, linked to the group of Adnan and Noah. A big goal in our project might be to make the drone neutralization autonomous and in order to do that, visual detection would be necessary, that's where Adnan and Noah come in. Discussion on how to develop a detection method would be how we collaborated. We'd need to update each other on milestones.
  • Technology Analysis
Identify the scientific and technical knowledge/skills involved in your project.
     - The knowledge involved in our project will vary depending on which path we go down for the take-down method. The definitely necessary knowledge includes a basic understanding of physics, VEX robot design and programming using robot c, as well as Parrot Drone controls whether manually or autonomously.
  • Competence
Identify skill sets, technical competence in your group, and list the missing ones which need to be acquired.
     - Again, this depends on which method we decide to attempt. However, we have a working knowledge of both robot c and the drone programming which is similar to python. What's missing is  sufficient PID controller knowledge. 
  • Safety
      - No risk. 
  • Equipment, materials & budget
    - Equipment includes a parrot drone, VEX robot kit, laptop. It's unclear if any items will need to be purchased.
  • Schedule
    - Our current main goal is to determine which area of drone take down we'd like to pursue, and then make a schedule for the coming weeks of working on that. 


Drone Take-down Possibilities

Signal Jamming
- The article spoke about the secret service using signal jammers to either hack, send off course, or cause rogue drones to crash. Detecting the signals that a drone emits can also allow the drone to be tracked.
 - Signal Jammer
- Unknown due to it being illegal for civilians to purchase or use signal jammers.
 - Signal jamming would seem to be a more accurate means of interception. Focusing on the signals allows for tracking and hacking as well.
-  Not available for civilian use, therefore the effectiveness is unknown. Could easily interfere with other wi-fi or Bluetooth signals.
 - http://www.foxnews.com/politics/2015/03/10/secret-service-testing-ways-to-intercept-rogue-drones-with-late-night-flights/
- It would be very interesting to be able to work with signal jamming for drone interception, but that’s not possible.

Interception Drone
- It’s an automated drone that can visually detect any drone within range, will fly directly above the enemy drone and dangle wire into one of the enemy drone’s rotors, causing it to crash.
 - Rapere Drone
- “It won't be cheap like a DJI type drone. It will be priced as a professional tool - we don't want this to become a toy people can use to disrupt legitimate drone use.”
- Two minute maximum takedown time.
Autonomous, so there could be a lot of them without any operators. Camera pointing in every direction, which means immediate detection.
- This is just an idea at this point. The limited availability (only for professional use).
- http://spectrum.ieee.org/automaton/robotics/aerial-robots/rapere-intercept-drone
- http://rapere.io/
- This sounds too simple to be interesting.

Hacker Drone
- A parrot AR drone equipped with a Raspberry Pi circuit board, a small battery, and two wireless transmitters. It seeks out the wireless signals of nearby parrot drones, and commandeers the control of the drone.
- Modified Parrot Drone - Approximately $110, not including the parrot drone.
- The ability to not only stop enemy drones, but control them as well.
- Requires assembly. Only works on Parrot drones (as I know of).
- http://arstechnica.com/security/2013/12/flying-hacker-contraption-hunts-other-drones-turns-them-into-zombies/
- https://github.com/samyk/skyjack

Net Gun
- It’s a Net gun. It’s a pressurized device that fires a net. - Net Gun
- $697
- Mobility, the net gun is about the size of a flashlight with a large head. Will not damage the drone. 45 foot range. Nets are reusable and very durable. Lightweight and mobile.
- Very costly. Requires human skill for accurate usage. Accuracy depends on user.
 - http://www.thenetgunstore.com/shop/

- If a cheap option is available, this would be interesting to experiment with, either attaching to a drone or a vex robot.

Summer Research - Henry


PID Control for VEX toss up


- PID stands for Proportional Integral Derivative
- It’s a software solution for controlling a system
-      
- Set point is the target value. i.e. the goal
- Process variable is start point
- Sensor reads the process variable
-
- The difference between the set point and the process variable is called the error
- The new process variable is found by multiplying the constant (pGain) by the error
- The process of determining the value of pGain is called Tuning
- The error is calculated by subtracting the process variable from the set point
- This is done in a while loop so it will keep calculating until the error is negligible, meaning the set point has been reached.
- pGain can determine the amount of time it takes for the set point to be reached, or if the set point will be reached at all (this is called Offset)
- Offset occurs because of “disturbances” which are anything that alters the system’s output.
- An integral is the area under the curve of a function
- Error is constantly recalculated
-
- Pseudo Code for both proportional and integral control with sample values. Gains have to be found experimentally
-
- Use of both proportional and integral control improves results in both time and accuracy.
- Derivative is the rate of change of the error with respect to time
-
- PID makes it everything even better.
- Noise is quick, random changes in the input signal that creates rapid fluctuations in the error
- Can be caused by vibration or electrical interference.
- Depending on the problem, you may need to use a different combinations, maybe just P, PI, PD, etc.

Thursday, June 18, 2015

Research Task 1 (06/22/15 - 07/03/15)

Drone Intercepting System
  1. Start thinking about how to intercept a drone. Search the web for any good methods. Analyze their strengths and weaknesses. Summarize your findings in a spreadsheet (including category, method, description, device, cost, strength, weakness, links, comments).
Physics of Projectile
  1. Projectile Motions of Tennis Balls (2013), Mangesh Rai. [chap. 1-3, or 33 pages] Review the basic physics of projectile. It is similar to the high-school physics, just changed to calculus notation. For example, dx/dt is similar to (delta x)/(delta t) except the (delta t) has been push to the limit and is very close to zero. So, v = dx/dt is the instantaneous speed rather than the average speed. The are some new materials such as angular momentum, etc. I believe that you can pick it up yourself.
 Math
  1. Matlab Videos, MathWorks. [first 22 short videos, total 1:54: 28] Learn the basic concepts of one of the most popular math tool in engineering schools. We might need to use it to simulate some robot control problems later. You can download the trial version of the product, and browse through the site to see whether there is a free version for K-12 education. 
PID Controller
  1. Introduction to PID Control for VEX Robotics, 5757 Team. [1 16-min. videos] Expose to the PID controller which exists in most of the devices requiring control. The PID controller design will be one of the major technique you will pick up this year.

Please take electronic notes while you are studying the materials, watching the videos, or browsing through the web. Each team will present their learning later in the summer meeting.