Welcome to My World!
Hi there! I’m Ali, and I’m thrilled to have you here! As an enthusiastic IT Engineering with a passion for embedded systems, I’m on a journey to explore the fascinating intersection of technology and innovation. Originally from Iraq, I’ve embraced the beauty of Finland since 2014, where I’ve been honing my skills in software development and networking for over five years. My academic adventure has led me to earn a Bachelor's degree in Information Technology Engineering, complemented by a solid foundation in mathematics. This unique blend empowers me to tackle complex problems with creativity and flair! From developing cutting-edge IoT solutions to mastering database management and cybersecurity, I’ve immersed myself in a variety of exciting projects. I love diving into challenges and crafting effective solutions, whether designing control systems or building automated test systems. One of my favorite projects involved creating a Bluetooth Low Energy mesh network for real-time environmental monitoring—it was an exhilarating experience! Your thoughts and feedback mean the world to me, so please don’t leave without sharing your insights! Thank you for stopping by my site. I can’t wait for you to explore my projects and join me on this thrilling journey!
PROJECTS
Gate control system.
My first project in Finland was design and build a control system for gates in 2018 by using Omron PLC, in this project a CX-programmer used to capture signals from sensors and implement coding part to design the circuit for the autmoamtion system which can controll the output by couple of relays and buttons. Frequancy converter has been used also to controll the speed of the motor that control the gate.check the video.
Creative Data Display with the Parker Solar Probe
During the last few years I have partcipated in many App chalanges in Finland,
the last chalange was last year. this chalange was about Creative Data Display with the Parker
Solar Probe. this chalange was for helping people understand how solar radiation affects their
day-to-day life is our goal with this project. We plan to do it with 3 approaches as follows: -
Informational Website - Solar information integration with Smart Home systems - 3D browser based game in which settings are impacted by Solar Wind speed and Intensity.
for more information please visit
spaceappschallenge
kvarkenspacecenter
Bee-Hive With VR
In November last year we had the chance of being a part of the XR Ocean Hackathon focusing on the future of education. The event was about using new ideas and techniques to create new ideas to industury, so we decide to implement a project of bee-hive and use VR enviroment. The BEE-R project focused on educating people regarding the significance of bees in relation to human life. our VR project is based on demonstrating and simulating how humans can construct and assemble bee hives, and how people can engage in beekeeping. in this project we had used UNITY technologie. for more information please visit uwasa
Light Intensity Processing for IoT Solutions
The scope of this project was to build and develop IoT solutions by working with light intensity sensor NSL 19M51 and develop the transmission part with modbus RTU frame. Project processing starts from building the hardware part of the sensor, analyze it, filter it, then forward the signal into microcontroller (Nucelo stm32). MODBUS RTU frame developed with MAX3485 chip with USART transmition protocol . The data has sent to a Database (SQL) using graphql API. The data has visualised on front-end as it shows on the graph.
Click here to download the presentation of the projectTemperature Control System Using PI Controller
Temperature control is an essential aspect of various industrial and scientific pro-cesses. Accurate temperature sensing and control are critical for maintaining the stability and efficiency of such processes. In this project, we have utilized the LMT84LP temperature sensor to sense the ambient temperature and a proportion-al-integral-derivative (PID) controller to control the speed of a fan to maintain the temperature at a setpoint. The LMT84LP sensor is a precision, analog output temperature sensor with a range of -50°C to 150°C and an accuracy of ±0.4°C at room temperature. The PID controller is a widely used feedback control mechanism that calculates an error signal between the setpoint temperature and the actual temperature and adjusts the fan speed accordingly to minimize the error. The aim of this project is to develop a temperature control system that can main-tain a stable temperature in each environment by continuously adjusting the fan speed based on the temperature measurements obtained from the LMT84LP sen-sor. The PID controller's tuning parameters are optimized using a trial-and-error method to achieve the best performance and stability of the temperature control system.
CTF Challenge with Automation and Network Security
Capture the Flag (CTF) is an activity in computer security where participants search for hidden "flags" in intentionally vulnerable software or websites. This activity can serve educational or competitive purposes. In competitive scenarios, the flags can be taken from the event organizers in challenges similar to those in the game show "Jeopardy!" The game may involve hiding flags in hardware devices and can take place online or in-person, with various levels of difficulty. Each team will have their own HMI system with a unique IP address to hack. Hackers will attempt to gain control of system resources, such as the Safety System and Robotic Arm, by hacking their way through five flags in a particular order, starting from Flag 1 and ending with Flag 5.
In this project, I have used diffrent technologies :.
Virtualazition :
ESXi enables running multiple virtual machines (VMs) on a single server. It's a hypervisor developed by VMware that partitions server hardware, allowing each VM to run its own operating system and applications. To handle high traffic, four virtual machines are deployed for each attack group, functioning in parallel. Each VM has its own domain controller containing all the applied services.
Network Designing & Firewall Policy:
In the network setup, four distinct groups have been created and isolated using VLANs on the Attacker switch. The Attacker switch forwards the traffic to the firewall, which applies policies to regulate the allowed protocols and source subnet masks. After passing through the firewall, the traffic is then forwarded to another switch connected to the server hosting a virtualization environment. On this server, an automation user interface is running, providing control over various devices. These devices include a PLC, responsible for controlling the robot, fire system, camera, and printer. The network architecture ensures secure and controlled communication between the different components, allowing the automation user interface to effectively manage and coordinate the operations of the connected devices.
Autmation System Control
In this network section, a PLC is connected to a relay controlling the fire house and a robot. The web application communicates with the PLC using TCP protocol via MODBUS. For the fire house system, when a request is received from the web application(PLC proramming "Leadar diagram language"), the relay is activated, powering on the fire house and initiating the steam. Regarding the robot, it has a microcontroller with two programs based on different inputs. Pressing "Launch robot V1.1" triggers a signal from the relay, activating the first program. Pressing "Launch robot V1.2" triggers a signal on another input, activating the second program.
Technologies used:
- Server virtualization using ESXi
- Designing network infrastructure using Fortinet devices
- Network traffic monitoring using FortiGate
- Communication protocols (TCP, HTTPS)
- Automation control system using PLCs
- Programming languages (Python, Ladder diagram)
Developing Of Automated Test System
The development of an automated test system aims to streamline the testing process for multiple protection relay devices simultaneously, minimizing human errors. This innovative system allows for the application of test cases across multiple relays, ensuring efficient and accurate assessments. By automating the testing procedures, it reduces manual effort and improves the overall reliability of the test results. The automated test system enables engineers to conduct comprehensive tests on multiple devices concurrently, optimizing efficiency and enhancing the reliability of protection relays in critical electrical systems.
Technologies and tools used:
- Jenkins Pipeline
- Robot Framework & Python
- Resource Allocation
- Reporting Plugins
- LabJack and Relay Boards
- Designing tools
- Blender
- CADS Electric 18
- Hardware building
This Jenkins pipeline script is designed to automate the CI/CD process for firmware and DUT (Device Under Test) development, streamlining the software testing and deployment workflow. It integrates multiple key stages to make testing more reliable and deployment faster by defining a sequence of actions that include code checkout, firmware building, DUT configuration, and running automated tests. The script’s parameters offer flexibility, allowing developers to enable or disable specific stages as needed, which is especially useful in cases like selective testing or component-specific updates.
Automated testing, including pre-tests and robot tests via the Robot Framework, verifies firmware quality and functionality of the Device Under Test (DUT). It aggregates results and logs into detailed reports that include pass/fail thresholds and visual elements for quality assurance. Upon successful completion.
Different agents (SWBuild and CITest) are utilized based on their capabilities, optimizing resource allocation and maximizing efficiency.
The pipeline utilizes Jenkins plugins like the Robot Framework plugin to generate and publish comprehensive test reports, enhancing visibility into test outcomes.
The integration of these hardware components establishes a tactile connection between software and hardware, enhancing the authenticity of testing.
Build a relay boards that can controlled by labjacks for appling different level of voltages, current and frequencies using some injection devices such as Omicron for test cases
Advanced Battery Management System (BMS)
Our Battery Management System (BMS) serves as a comprehensive solution designed to oversee, regulate, and ensure the optimal performance of battery packs. Focused on critical functions such as State of Charge (SOC), State of Health (SOH) monitoring, and protection against potential issues like overcurrent, overcharge, and overdischarge, this system leverages the capabilities of the STM32 Nucleo platform.
In this project, I have used diffrent technologies :.
System Operations:
Our Battery Management System (BMS), built on the STM32 Nucleo platform, offers a comprehensive suite of functionalities. It begins by configuring crucial BMS parameters like temperature limits, shunt resistor values, and protection settings through the BatteryManagement function. Dedicated algorithms compute the State of Charge (SOC) and State of Health (SOH) while persistently storing these values—SOC, SOH, and Depth of Discharge (DOD)—in EEPROM for seamless data continuity. Additionally, our system implements protective measures to manage overcurrent scenarios and dynamically adjusts battery capacity over time. Facilitating seamless data exchange between Master and Slave devices, the system leverages the Modbus RTU protocol over USB. Our solution, developed using C and STM32CubeIDE, incorporates hardware elements such as differential amplifiers, multiplexers, MOSFETs, shunt resistors, and external voltage/current measurement circuits. Data handling is streamlined via a personal database, enabling efficient storage and visualization. Explore our STM32 Nucleo-based BMS—an engineering marvel designed to ensure efficiency, reliability, and prolonged functionality for battery systems.
Real-time Signal Visualization: Integrating Grafana and SQL Database for STM32 Nucleo Signals via MODBUS RTU in Docker Environment
Our system orchestrates a powerful combination of technologies to visualize and manage data efficiently. Leveraging Grafana and an SQL database within a Docker environment, we achieve real-time visualization of signals sent by the STM32 Nucleo MCU using a Python script and MODBUS RTU protocol. Signals transmitted by the MCU are seamlessly inserted into the SQL database, enabling comprehensive data management. Grafana, utilizing real-time streaming capabilities, provides immediate access to this data, facilitating dynamic and insightful visualization. This integration, set within a Docker framework, ensures a scalable and easily manageable environment for monitoring and analyzing signals effectively.
Technologies and tools used:
- STM32 Nucleo MCU
- Python
- MODBUS RTU Protocol
- SQL Database
- Grafana
- Docker
- Oscilloscope
Microcontroller unit serving as the core hardware for the Battery Management System (BMS).
Scripting language utilized to develop the communication script for the MCU to transmit signals.
Communication protocol facilitating the exchange of data between the MCU and other devices.
Database management system employed to store and manage the transmitted signals and system data.
Data visualization platform enabling real-time visualization and analysis of signals and data stored in the SQL database.
Containerization platform utilized to create an isolated environment for deploying and managing Grafana and the SQL database, ensuring scalability and ease of management.
Hardware tool used for monitoring and analyzing electronic signals, offering insights into voltage, current, and waveform characteristics, potentially aiding in debugging and system analysis within the BMS.
Bluetooth Low Energy Mesh Network For IoT Solutions
This is my thesis project which presents the design, implementation, and optimization of a Bluetooth Low Energy (BLE) Mesh network using Nordic Semiconductor nRF52-DK boards for real time environmental monitoring. The research focuses on developing firmware and integrating communication protocols to ensure efficient and reliable data transfer across the network. The key objectives include optimizing the network's scalability and reliability, evaluated through practical experiments. The study systematically assesses the Packet Loss Ratio (PLR) at each network node, identifying potential bottlenecks and inefficiencies that could hinder large scale deployments. To this end, four scenarios were tested: (1) a single link performance with one broadcaster and 3 listeners, (2) a chain topology with one broadcaster, three relays, and one listener, (3) a mesh network with two relays, two listeners and one broadcaster, and (4) a hybrid topology with multi-hop configuration with redundant communication pathways. These scenarios were designed to analyze the impact of relay effectiveness, multipath delivery, and multi-hop communication on network performance in both outdoor and indoor environments. The results indicate that the optimized BLE Mesh network architecture significantly enhances data accuracy, reliability, and scalability, making it well suited for environmental monitoring applications. The practical experiments validate the network's real world functionality and demonstrate its potential for integration into larger IoT systems. In conclusion, this thesis advances BLE Mesh networking technology by providing scalable, reliable solutions for environmental monitoring, with broader implications for industries such as smart buildings and industrial facilities. Click here to download the presentation of the project
Technologies and tools used:
- Nordic Semiconductor nRF52-DK Boards
- Bluetooth Mesh Protocol
- nRF52832 SoC
- nRF5 SDK for Mesh
- nRF Connect SDK
- nRF Sniffer
- nRF Mesh App
- Wireshark
- SEGGER J-Link
- Multi-hop Relay Mechanism
- Environmental Sensors
The primary hardware used for creating and testing the Bluetooth Low Energy (BLE) mesh network for environmental monitoring.
The communication protocol that supports many-to-many communication within a BLE mesh network, essential for creating a scalable and reliable system.
This System-on-Chip integrates the ARM Cortex-M4 processor with BLE capabilities, enabling the development of scalable IoT applications.
A software development kit designed for building Bluetooth mesh applications on nRF52 hardware, providing necessary APIs and libraries.
A suite of tools and libraries for developing BLE applications on the nRF52 series, facilitating integration and firmware development.
Used for capturing and analyzing BLE packets, allowing for real-time network performance analysis and debugging.
A mobile app that allows users to provision, configure, and control Bluetooth mesh networks through a smartphone interface.
A network protocol analyzer utilized to capture and analyze the data flow within the BLE mesh network, providing insights into packet transmission.
A hardware debugger that facilitates firmware development and debugging on the nRF52-DK boards.
A networking technique used to extend the communication range by allowing nodes to relay messages across the BLE mesh network.
Hardware components integrated into the mesh network to monitor real-time parameters like temperature, humidity, and air quality.
IN-COMING PROJECT
Stay Tuned for Our Next Exciting Project!
We're currently in the process of selecting our next innovative venture. As we explore various possibilities, anticipation is building for the unveiling of our upcoming project.
Keep an eye out! Once the project is chosen, we'll announce it right here. Get ready to dive into our next thrilling endeavor!
Get excited with us as we finalize our decision and prepare to embark on our newest journey together!