ENSC 151
DIGITAL AND COMPUTER DESIGN LABORATORY

Under construction!

SPRING '99 ENSC 151 LAB TEAMS:


  • 1. The Dukes:
    Colin Knight
    Mike Nelson
    Cam Kenny
    Alex Dunfield (team leader)

    SKI GAME
    We, the Dukes feel that our original Tamagochie (Virtual Frosh) idea is not completely original. While experimenting with the board, we have developed an algorithm which enables us to scroll a character smoothly from one line of the LCD to another. This allows for smoother animation effects. To fully demonstrate this, we have decided to create a ski racing program which simulates a skier going through a slalom course passed gates. The leftmost part of the screen will be the top of the hill, and the opposite end the bottom. The skier character will scroll smoothly back and forth on the short axis, and the trees/gates/rocks will scroll towards the top of the screen. We are still developing an algorithm to smooth the characters smoothly along the long axis.


  • 2. Dena:
    Shabnam Abedi Moghaddam
    Sahar Khalili (team leader)
    Golnaz Sanaie-Fard
    Amir Jodar

    MIROSOT
    The Micro Robot Soccer Tournament (MIROSOT) is an international robotics competition in which teams of robotic soccer players compete against one another. One of the aims of the competition is to promote developments in autonomous robots and intelligence systems that can cooperate as a team to achieve mutual goal. < http://www.ensc.sfu.ca/research/mirosot/>. The SFU MIROSOT team'99 is attempting to redesign the current existing robots to equip them with partial intelligence on board. This will be done through the addition of hardware and software for the purposes of collision avoidance and improved path following characteristics.

    One of the problems of the SFU's MIROSOT team is that the robots can't move in a desired straight path. In order for a robot to move in a straight path, ideally the frequencies of both wheels should be the same. Due to the mechanical limitation of the motors and the wheels, practically we see that the wheels don't rotate at the same frequency. Therefore, deviations are observed in the path. The aim of our project is to overcome this problem by providing appropriate software, using Motorola 68HC12 microprocessor, Altera chip, and the LCD. Our strategy was to get a feedback pulse from the wheels, comparing it with the desired frequency from the CPU, and adjusting the frequency of the wheels.

    The Dena WWW page.


  • 3. Wonder Women:
    Sharon Chang (team leader)
    Judy Cha
    Manpreet Gakhal
    Yvette Kang

    TAMAGOCHI: THE GAME OF LIFE
    I am with the group Wonder Women. For our final project, we plan to make a game called The Game of Life. The object of this game will be to raise a child. The user will be presented with a variety of decisions they will have to make regarding how they will raise their child. These questions will be generated randomly from a list of question we will have made. The user will use the push buttons to answer the questions, and based on the choices they make, they will be awarded a certain amount of points. The clock will run out when the child turns 18, and the user will be presented with a final comment regarding what their child has grown up to become. This final comment will be based on the number of points the user has accumulated. The game will incorporate a lot of graphics on the LCD and some sound. We may also modify the game so that the user will have the choice of making decisions for a child or an adult.

    The Wonder Women WWW page.


  • 4. EMF:
    Eric Hennessey (team leader)
    David Boen
    Michael Adachi
    Shahin Roboubi

    THE CREATIVE DIGITAL COMPOSER
    The Creative Digital Composer is a music composition program for use with the Motorola 68HC12 Evaluation Board, in conjunction with the Altera Max 7000 series FPGA. The program uses the LCD to convey information to the user, with a menu system directing all user input. The composition mode of the program allows the user to enter in note values and length of play through a sheet music simulation. The LCD displays one line of sheet music, which the user can navigate through and enter notes or rests as desired. The playback mode allows the user to play either his/her custom composition or one of a number of pre-loaded musical pieces. The notes of the piece, displayed in sheet music form, are scrolled across the LCD as the music plays through attached headphones. Certain playback characteristics, like speed, can be controlled by the user in real time.

    EMF WWW page.


  • 5. The Slackers:
    Natisha Joshi
    Trevor Hawkins
    Shaun Louie (team leader)
    Dave Liebich

    STRATEGY GAME
    Our project group is "The Slackers", and we have agreed to make a strategy type "game" for the EVB. The user will have to operate and maintain a nuclear reactor to maximize efficiency. He or she will have a set of controls that will determine what happens within and around the reactor. In the late stages of the project we may decide to implement this program into something larger, like a vessel or a city. We still have yet to work out the details of this project and learn more about what we are going to actually be doing. With this project idea we can go at many levels of complexity which will allow us to maximize the power of the EVB.

    The Slackers WWW page.


  • 6. The Musketeers:
    Denesh Pohar
    Jonathan St. Jean
    Keith Phu
    Tristen Georgiou.

    BLACKJACK 12
    For our final project, we, the musketeers plan to create the classic card game blackjack. The user will play against the HC 12. The purpose of the game is to get as close to 21 without going over. The winner is the one who is closest to 21. The game will randomly deal two cards to the user, which will appear on screen and will deal two to its self, which will be in memory. The user can then push one of the buttons to get another card and another button to signal that the user will hold. We will program the HC 12 to get cards for itself and to hold.


  • 7. Pikachu!:
    Clarence Wong
    Gabbie (Gabrielle) Sheung
    Lydia Tse
    Alex Kwan (team leader)

    THE ORGANIZER
    A personal organizer will be designed and implemented using the EVB. The organizer will consist of a daily planner and a phone book.

    Characters will be displayed onto the LCD. Two buttons will be programmed to shift the screen left and right in order for a user to select characters. A third button will be programmed to perform an "ENTER" instruction that saves a character selected by the user. As a result, the user can select different characters and save entries such as "12:30_ensc151" into the daily planner or "1234567" into the phone book. When it is time for an event to occur, the board, connected to a sound device, will play a music or note to notify the user. In addition, each phone number will correspond to a specific frequency. The entries in the phone book can then be dialed using a speaker connected to the board.

    The Pikachu WWW page.


  • 8. Fried MicroChips:
    Adrian Yee (team leader)
    Brad Smith
    Jimmy Kan
    Shaun Jackman


    For our final ENSC151 project we are considering two possibilities.

  • 1. A game wherein a little man moves up and down the left side of the screen throwing things at little men moving towards him from the right side of the screen. To include custom sprites and sound effects. Plans to incorporate a paddle to control the main character.
  • 2. A mini Forth compiler. Would be based on a compact set of 256 of the most basic Forth words. Details still sketchy, but a promising project none-the-less.

  • 9. Byte Me:
    Eddy Chiu
    Paco Don (team leader)
    Willy Wu
    Kevin Yoon

    ANIMATRONIC EYES
    Our idea is to use the microprocessor to control a mechanical set of animatronic (robotic) eyes. In order to achieve this, we will need to read in analogue values from a set of trim pots using the on-chip A/D converters. These values will specify the position of the various axes (horizontal, left, and right) for the eyes. We will use standard R/C servos to physically move the eyes, this entails outputting a very specific pulse width modulated (PWM) signal to the servos. As input the servos expect a PWM signal with a 50Hz duty and a pulse width varying between 0.5ms and 2.5ms. The PWM signal could be implemented on the HC12 but it will probably be done on the Altera FPGA. This is because the Altera supposedly has a 25MHz clock, which will allow a full 8 bits of resolution over the small 2ms time slot (256 steps over the range of the servo's motion). Although this could be coded on the HC12, the 8MHz clock makes for very timing critical operation, and would leave less processor power and memory for anything else. The on-chip PWM outputs could also be used, but this would only allow around 25 steps over the servo's range of motion. This would result in very jerky and unrealistic motion of the eyes. With the leftover processor power, we can display information on the LCD such as position values, system status, etc.

    Byte Me WWW page.


  • 10. HomeGrown:
    Karine Le Du (team leader)
    Pin-Kang Liu
    Jason Wong
    Amanda Matson

    PLANT HYDRATION SYSTEM
    The HomeGrown group proposes to develop an indoor plant hydration system. The incentive for developing such a system is to keep plants alive when the plant owner is not available to water the plant on a continuous basis. A target user would be a frequent vacationer. The M68HC12 microcontroller will compare the soil humidity to threshold humidity and deliver water to the soil if the input humidity is less than the said threshold humidity.

    The hydration system will support various threshold humidities, corresponding to the various soil humidity requirements of plants. The user will select the desired threshold humidity, depending on the type of plant the system will be responsible for. At regular time intervals, the microcontroller will measure the humidity of the soil. If the input humidity is less than the threshold humidity, then the microcontroller will enable controlled water flow (i.e. the microcontroller will water the plant). The watering frequency will depend on the selected threshold humidity. A cactus, for example, will be watered less often than an orchid. We have not yet decided if the amount of water given to a plant will be the same for every threshold humidity setting.

    Our first task will be to research and select a method and a device for measuring the soils humidity. The input humidity measurement will be an analog signal, which we will need to translate to digital. The analog signal will be compared with the selected threshold humidity. If the input signal is greater than the threshold, the signal will be set to low and the plant will not be watered. If the input signal is less than threshold (i.e. the soil is drier than the threshold humidity), the signal will be set to high and the microcontroller will control water flow to the plant.

    Water flow can be controlled with a valve or with a pump. If we use a valve, we will need to design a sealed opening and closing mechanism and integrate the mechanical component to the system. A pump can be integrated with greater ease than a valve mechanism: it requires only an electric current to turn the pump on. Thus, we will likely use a pump in our hydration system.

    The HomeGrown WWW page.


  • 11. Big Sexy:
    Yasaman Mohammadi
    Dan Toews
    Prashan Gunasingam (team leader)
    Greg Misa

    MUSIC MACHINE
    We are planning on doing our project on a music machine. This is supposed to generate tones based on standard frequencies. This ideally will able to produce a sequence of beeps that have musical inclination. Even though producing sound output is something we are looking into, we are mainly concerned about the algorithms involved in efficiently producing harmonious beeps. The LCD will be used to display the key being played and will also be used to output information needed by the user to make selection.

    Even though this is our main plan we have a backup plan that involves an alarm system. I will not describe this in this report but if we change our mind before the second report is due we will include the preliminary discussion along with the update


  • 12. Unknown Talent:
    Zafeer Alibhai
    Jon Aoki
    Gary Lau (team leader)
    Robert Sin

    THE GREAT ALARM SYSTEM
    We will create an Alarm System for home use!

  • Inputs: Motion Detectors (connected to the analog-digital converter) 3 Push Buttons of FPGA board HEX Keypad (use to activate and turn on/off the alarm system).
  • Output: LCD Display, which will display the status of the alarm system and any input from the HEX decimal keypad. The Audio Jack will have a speaker connected to it, in which the will go off if the alarm is tampered with. This alarm system will hopefully act like any other home alarm system, except for the fact that it will not be connected to some sort of monitor service

    The Unknown Talent WWW page.


  • 13. Circuits Couture:
    Davie Lau (team leader)
    Aydin Kilic
    Jimmy Tsai
    Richard Fung

    MUSICAL CHALLENGE
    For our final project we would like to make a memory game. There will be four sounds that will will correspond to the four buttons. Music notes will also correspond to the sounds and they will be displayed on the LCD. The object of the game is to repeat the sound pattern in order. Each time the user is successful an additional note will be added.


  • 14. PKNY:
    Erik Haberger
    Stanley Chui
    Timothy Lau
    Ian Chan (team leader)

    PK Boy
    Our group has decided to make a karoke music box for our final group project. This music box will be programmed with music, that can be played from the headphone jack. Also we will have the lyrics to the song scrolling across the screen, this could require creating user defined characters. The final aspect of the music box involves some hardware implementation, we are planning to have the chip control some motors that will in effect enable a figure to move and "dance" about. We have yet to work out the details of the project but this is our initial plan. We will keep you updated on the status of our project. Thank you for your attention.

    PKNY WWW page.


  • 15. SiliconFX:
    Lawrence Tam
    Ryan Kirk (team leader)
    Steven Soong
    Jeremy Schruder

    YET UNTITLED GAME
    Our project will be a yet untitled game, which uses the interrupt buttons to maneuver through a mine shaft or underground tunnel, in the search for the hidden treasure. The buttons would move the character left and right, as well as quit or pause the game. The challenge for the player will be to escape falling rocks from the ceiling of the cave, and maybe rolling boulders. Possible additions are sound, and levels.

    SiliconFX WWW page.


  • 16. The Team Formerly Known As No Name:
    Micha Pringle
    Ian Wight
    Avrom Malks
    Eric Charest

    OLYMPIC HURDLE RACING GAME
    We have decided to do an Olympic hurdle racing game. This will be a side scrolling game. We will break up each line of the LCD display into two lines, thus having a total of four lines. This will allow us to have a man running and jumping hurdles on each line of the LCD display. We intend to have two buttons for the game, a running button which must be pressed repeatedly to increase and maintain the runner's speed, and a jumping button which when pressed will result in the runner jumping. If a runner crashes into a hurdle, it will slow down his current running speed. Once the runner has crossed a finish line, the hurdle game ends.

    We have selected this preliminary design because it will lend itself quite nicely to an interactive two player game that may actually be fun because of the competition between players. Also, previous game projects completed in this course were not two player games.

    We hope to be able to scroll the two parts of the display at different speeds and have several different hurdle tracks (that is, the hurdles set apart at different intervals). Possibilities also include a 'short' jump and a 'long' jump so that a two short jumps (or a short and a long jump) would be required to jump two hurdles separated only by a single unit of space. A long jump would be required for two hurdles adjacent to each other.

    The Team Formerly Known As No Name WWW page.


  • 17. LyraTecs:
    Gordon Choi
    Mavis Chan
    Heidi Lam
    Eric Chow (team leader)

    PERFECT PITCH
    Interval testing is one of the many test items in aural exam for pianists. Our goal of the final project is to perform such interval testing. In such test, two notes are played at the same time. the student must then identify the interval (the distance) between the two notes. For our final project, we would pick two notes at random and use the audio output to play that two tones. The user is then asked to input the interval and the LCD would display to the user whether the input interval is correct. The user would use a connected keypad to make such input.

    http://members.xoom.com/KatyaN/lyratecs.html


  • 18. The No-Name Team:
    Graham Laverty
    Vedran Karamani
    Peter Bisla (team leader)

    STROBE LIGHT
    We will try to input audio signal to our EVB, then process it and hopefully be able to output corresponding analog signal in the form of resistance, to drive the strobe-light. The result should be a strobe light whose flashing frequency follows the frequency of the audio signal.

    HEAT 2000
    After further research and consultation with older engineering students we decided to go with the following project description:

    We will use our HC12 EVB together with external circuit as a temperature measuring unit. External hardware would measure temperature in Kelvins and send according voltage to our a/d converter. We will then use this signal information together with a software package and interface through a PC as a temperature measuring and logging unit with an option of time recording. The unit will also consist of LED status component.

    We have already worked out some very important details. We have finalized our external circuit set-up and found that all of the parts required are easily accessible through regular electronics store (Active) plus we had some electronics parts from the previous electronics courses (two of our team members have taken two years of electronics in high school). We have also worked out pseudo code for our software package and are now in a stage of completing individual parts of code and putting it all together.

    We believe that this project idea will contain necessary components to demonstrate our knowledge of the course material and yet be simple enough for us to complete in the time slot provided.

    The No-Name Team WWW page.


  • 19. TKO:
    Tony Leung
    Jennifer Manasserian
    Chris Poon (team leader)
    Simon Wong

    ANNIHILATOR
    For this project, we'll implement an arcade-style combat game for 2 players (Human vs. Human). Game action will all be displayed on the LCD. Each player will have 2 control - Hit or Block (All 4 buttons will be used). The first player to win 2 rounds wins the game. Players cannot move. They can only block or hit (We do not feel there exists enough resources for us to successfully implement more). Also, there will be no computer vs. human game mode provided.

    Most of the code will be done in HC12, while the Altera chip will provide counter functionality, priority & logic functions to HC12 to determine players action and game results. Debouncing of the buttons will likely be done using the Altera chip. We will implement sound effects if time permits.


  • 20. Red Army :
    Damian Nesbitt
    Edward Chen
    Aaron Schellenberg

    NHL '94
    Our project will consist of a Morse-code decoder. This machine will allow the translation from the dots and dashes of Morse code to plain English. The Morse code will be entered through the buttons the program will decode the messages in real time. If possible we will also have a way of encoding plain English into Morse code. This is the perfect project for the RED ARMY to undertake.

    The Red Army WWW page.


    Last modified: Friday February 26 20:08:27 PST 1999.