Embedded System

Ding Jiaqi/0379388

Embedded systems / Bachelor of interactive spatial design



Week 1

Class Summary and Reflection

In this class, I gained a deeper understanding of the integration of embedded systems and interactive spatial design. I learned that embedded systems are widely used in fields such as smart homes and industrial automation, while interactive spaces enhance user experiences through technologies like holograms, LED walls, and VR/AR. Additionally, the class provided a detailed explanation of the requirements and content of Assignment 1, helping us understand how to complete it effectively, including selecting appropriate embedded system concepts and interactive design approaches and integrating them to create an engaging interactive space.

During the class discussion, we conducted a group discussion on Assignment 1, exchanging ideas and ultimately deciding on our project’s theme—conveying the concept of environmental protection. We aim to use embedded systems and interactive spatial design to help audiences better understand the importance of environmental preservation, such as dynamically displaying environmental changes through LED walls or using sensors to enable interactions between people and nature. Moving forward, we will further refine our design, incorporating technological elements to ensure that our project is both innovative and effectively conveys the message of environmental awareness.

Week 2

Class Summary and Reflection

This class centered on the embedded system design process, delving into its key concepts, processes, and significance. The design methodology is vital in embedded system design. It monitors design, aids performance optimization and testing, guides tool development, enables automated design, promotes team communication, and boosts efficiency. The design process has multiple key stages. Requirements analysis, the design foundation, involves gathering functional and non - functional requirements. Functional requirements define system input - output, and non - functional ones, like in a GPS moving map's performance and cost, set design constraints. The specification stage refines requirements into clear guidelines for design. Architecture design plans the system's hardware and software structure, influencing performance and scalability. Component development focuses on choosing and creating hardware and software components, with their quality and fit impacting the system. System integration combines hardware and software components. This challenging process includes integration, interface checks, debugging, optimization, and system verification, which are essential for system operation. 

hands-on operation process

The teacher also guided us to install programs like Python on our own computers to prepare for future classes. During the class, we tried to type in code and run it by ourselves. 

Week 3

Class Summary and Reflection

This class focuses on the prototyping of embedded systems and introduces three tools and methods: breadboards and wire wrapping, rapid prototyping and 3D printing, and digital prototyping. The aim is to help students understand how to develop embedded system prototypes more efficiently and at a lower cost. The details are as follows: 

1. Importance and Challenges of Embedded System Prototyping: Prototyping is crucial in electrical engineering as it enables the testing of ideas, error detection, and design optimization. However, when dealing with complex hardware and software components, prototyping can be challenging, time - consuming, and costly. 

2. Breadboards and Wire Wrapping: A breadboard is a plastic board with holes that can hold electronic components and wires. Wire wrapping is a technique that uses a special tool to wrap thin wires around the pins of components to establish a reliable connection. They are suitable for prototyping low - power, low - frequency, and low - complexity circuits. The configuration and components can be easily changed without soldering or etching. 

3. Rapid Prototyping and 3D Printing: Rapid prototyping creates physical models of designs through additive manufacturing methods. 3D printing is one of these techniques, which can print designs layer by layer using various materials. This method is helpful for prototyping embedded systems that require customized shapes, sizes, structures, or need to be integrated with other objects.

 4. Digital Prototyping: In the prototyping of interactive spaces and embedded systems, digital prototyping requires creating a virtual space and integrating embedded technologies such as sensors and touchscreens into it so that it can respond to user interactions. Creating a digital prototype is divided into three steps: conceptualization, building a virtual model; interaction design, defining the way users interact; and simulation, using software and platforms to simulate the real - time behavior of embedded systems. 

hands-on operation process

To install the operating system, insert the SD card into your computer, perform the necessary operations, and then insert it into the Raspberry Pi to complete the system installation. Our instructor installed the drivers for us. Connect the Raspberry Pi to the computer using a USB cable, open the Device Manager, and connect the Raspberry Pi with the installed drivers to the computer using a USB B cable. Open the terminal, set the speed to 115200, and enter your username and password. After the Raspberry Pi reboots, log in and type "ifconfig" to find the inet address corresponding to "wlan0". Open VNC Viewer, enter the IP address, and input your login information. To run the Python demo code on the Raspberry Pi, enter the code, save it to a folder, and execute the code. Once you hear a beep, you can use the buttons on the device to control the LED lights and the buzzer.



Week 4

Class Summary and Reflection

Today in class, we learned two very interesting things: AR and VR technologies, and various sensor modules. AR technology can combine virtual elements with the real world. For example, by using a mobile phone or glasses, we can see virtual objects in real - life scenes. It is used in many scenarios such as playing games, learning knowledge, and medical treatment. There are several types of AR. Some require scanning patterns like QR codes to display virtual content, some can place virtual objects in real scenes by positioning without patterns, and others can project light onto objects to create interactive effects. There are also many tools for making AR applications. For instance, when Unity and Vuforia are used together, we can create AR - enabled applications. Apple and Android systems also have their own dedicated tools. VR technology is even more amazing. By wearing special glasses, we seem to really enter a virtual world where we can explore and interact with things inside. It is often used in gaming, learning, and training. Among the tools for creating VR content, Unreal Engine can produce extremely beautiful graphics, and many large - scale VR games use it. Blender is a free tool that can create various scenes and characters in VR. In addition, we also got to know some very useful sensor modules. For example, the SR602 can detect the movement of people and animals; the TTP223 can respond when touched and can be used to make touch switches; the MH - RD can detect rain; the MH can sense the brightness of the surrounding light; and the microphone module can pick up surrounding sounds. These sensors are very useful in our daily lives and can help us achieve many automated functions. 

hands-on operation process

In today's class, the teacher introduced the principles of the tools we used in detail. Subsequently, the teacher started to guide us in assembling two circuit boards. During the assembly process, we found that it was very important to pay attention to details. For example, the installation direction of some small components was crucial. If they were installed incorrectly, it might cause problems later. Finally, we had to connect the two circuit boards, which required five wires. The teacher emphasized the correct wiring method, and each wire had to be inserted into the corresponding port accurately. After the hardware part was completed, the teacher asked us to log in to the system. We entered our usernames and passwords and waited for a while for the system to load. After successfully logging in, we needed to enter specific command codes. After entering the codes correctly, we tested the touch sensor. When we gently touched it, we could see the sensor respond. 


Week 5

Class Summary and Reflection

This course centered on the Embedded System Development Life Cycle (ESDLC), exploring the whole process from requirements analysis to product operation and maintenance. It offered a structured view of embedded system development.
ESDLC has multiple crucial phases. The requirements analysis phase involves gathering stakeholders' expectations, defining functional and non - functional requirements (like a smartwatch's features and power consumption needs), identifying constraints, and creating a guiding requirements document. This is fundamental for the project.
The feasibility analysis, done before design and implementation, assesses the project from technical, economic, operational, and legal - ethical aspects. It decides if the project is viable and gives a basis for decision - making.
In the design and implementation phase, hardware, software, and interface designs occur simultaneously. Components are chosen, design documents are made, and then hardware and software are developed and integrated to get a test - ready system.
The integration and testing phase uses various tests. Functional testing checks if functions work; performance testing assesses system performance under different loads; security testing guards against threats; usability testing improves user experience; compatibility testing ensures system - device/platform cooperation; and recoverability testing examines the system's failure - recovery ability.
For product release and marketing, final tests are done, the product is launched, user docs are provided, and market strategies are developed. In the operation, maintenance, and update phase, the system is monitored, issues are fixed, and updates are pushed to keep it running well.
This course explained ESDLC phases clearly. It enhanced our knowledge and laid a good foundation for future embedded system development work, which helps standardize the development process and boost product quality and efficiency.

hands-on operation process

In this class, we completed the PPT for our final assignment.

Week 6

Class Summary and Reflection

This class focused on using the Raspberry Pi with the Maker pHAT board, along with an OLED display, SR602 motion sensor, TTP223 touch sensor, and LED. We also learned basic programming and resistor value calculation.

1. OLED Display Setup
  Enable I2C: Enter commands in the Pi's terminal to enable the I2C interface, then install libraries for the display.
 Prepare & Set Up: Create an “oled_display” folder and a virtual environment inside. Install “luma.oled” and download example programs with their needed software.
 Run Examples: Open and run the examples in Thonny. Set Thonny to use the virtual environment's “python3.11” file.
2. SR602 Sensor - LED Interaction:
Write code in Thonny. The LED lights up when the SR602 sensor detects motion and turns off when there's no motion.
3. TTP223 Sensor - LED Interaction:
Write code in Thonny. The LED lights up when the TTP223 touch sensor is touched.
4. Resistor Calculation:
Use Ohm's Law. With 3.3V from the Pi, 2.0V for the LED, and 20mA current, we need a 65Ω resistor for the LED.

This class taught us connections, coding control, and resistor calculation, which will help us with future projects.

hands-on operation process

In this class, we will start working on our final assignment. 


Assignment 1


My team and I have invested a significant amount of time discussing the direction of our project. In order to design a smart interactive project that combines embedded systems with innovative inspiration, we have consulted numerous online resources, hoping to spark more creativity. Initially, I came across a case study of a smart lighting control system that changes scenes based on facial expressions, which all of our team members found fascinating. During discussions on how to integrate these concepts, one of my team members proposed the idea of focusing on the theme of ecological environmental protection. We unanimously agreed and decided to merge the two ideas.

Within the framework of this theme, a team member suggested that in addition to controlling scenes through facial expressions, could we incorporate other interactive methods? For example, using touch screens to reflect the impact of human activities on the ecological environment, such as a beautiful scene gradually dimming as it is touched, symbolizing the destruction of nature by human actions. This idea was well-received by the team. Consequently, we began gathering relevant technical information together and started working on the project.



Assignment 2

To complete the refinement of the PPT content efficiently and well, our group members decided after talking. Based on the existing PPT parts, each person will pick a part to expand. Here is how we will do it. First, every member has to look carefully at the whole PPT framework. We need to know the main points and how each part is related. Then, depending on our own knowledge and what we first think about the project, we choose the PPT parts we will be in charge of. After choosing the parts, we will look for related information in many ways. This will give good support from studies and real - life examples for the PPT content. Also, we will use our own ideas about the project to choose, put together, and make the information we found better. After we finish getting information and making our parts better, we will make the PPT in an offline meeting and put all the information we found into the PPT. 


Assignment 3

Assignment 3, in my opinion, is undoubtedly the most difficult assignment we have ever faced. From the very beginning, our group encountered numerous thorny problems. When preparing for the presentation part, the screen and the computer just wouldn't connect. We tried all kinds of methods. We repeatedly checked whether the connection cables were plugged in tightly and constantly adjusted the display options in the computer settings. However, the problem still remained unresolved, and everyone was extremely worried. At the same time, when we were making the box for the assignment presentation, we found that the size was inaccurate and deviated significantly from what was expected. This undoubtedly added a huge obstacle to our work. Nevertheless, in the face of these numerous difficulties, our group did not choose to give up. Through continuous attempts and exploration, we finally managed to overcome these hurdles successfully. First of all, we needed to conduct code testing, which was a crucial pre - step for the entire assignment. We obtained a test code and started the test carefully in a tense and focused atmosphere. Everyone stared intently at the screen, closely monitoring every data and feedback during the test process. After meticulous operations, the test was finally completed smoothly, which gave us great confidence. Immediately afterwards, we started writing our own code without a moment's rest. During this process, we needed to insert carefully selected pictures into the code. This was no easy task. The setting of each parameter and the writing of each line of code needed to be precise. Otherwise, the pictures might not be displayed properly or the code might not run. The group members worked together in a division of labor. Some focused on sorting out the code logic, while others carefully checked the picture format and size to ensure their compatibility with the code. After a long period of hard work, when we pressed the run button, the whole group held their breath. Finally, the program ran successfu






Comments

Popular posts from this blog

Games Studies

INTERACTIVE DESIGN: EXERCISE 1: WEBSITE ANALYSIS