IST Independent Solar Tracker System Software Presentation Lyndon

  • Slides: 15
Download presentation
IST: Independent Solar Tracker System Software Presentation Lyndon Mazon ETEC 474

IST: Independent Solar Tracker System Software Presentation Lyndon Mazon ETEC 474

MCU • Freescale 9 S 12 C 128 • 24 MHz Bus Frequency •

MCU • Freescale 9 S 12 C 128 • 24 MHz Bus Frequency • 4 kbytes RAM • 128 kbyes FLASH EEPROM

Kernel • Timeslice Cyclic Scheduler using OCDelay() • Period: 10 ms

Kernel • Timeslice Cyclic Scheduler using OCDelay() • Period: 10 ms

Task Overview • Init. Task() • Time. Slice() • Date. Task() • Track. Task()

Task Overview • Init. Task() • Time. Slice() • Date. Task() • Track. Task() • Temp. Task() • UITask()

Init. Task() • Initialize Ports, Operation Mode, LCD • Execution Time: ~100 ms •

Init. Task() • Initialize Ports, Operation Mode, LCD • Execution Time: ~100 ms • Runs Once

Time. Slice() • Use OCDelay() function for Timeslice • Period: 10 ms • Execution

Time. Slice() • Use OCDelay() function for Timeslice • Period: 10 ms • Execution Time: 5 ms • CPU Load: 50%

Date. Task() • Calculate time and date, or update to new user-defined time and

Date. Task() • Calculate time and date, or update to new user-defined time and date • Period: 1 s • Execution Time: ~100 ms • CPU Load: 10%

Track. Task() • Decide which tracking mode to implement • Two subtasks: Active() and

Track. Task() • Decide which tracking mode to implement • Two subtasks: Active() and Passive() • Active() – Period: 10 mins; Execution Time: ~10 s • Passive() – Period: 30 minutes; Execution Time: ~15 s • Track. Task() CPU Load: 1. 67% + 0. 83%

Temp. Task() • Calculate temperature • Period: 1 s • Execution Time: 20 ms

Temp. Task() • Calculate temperature • Period: 1 s • Execution Time: 20 ms • CPU Load: 2%

UITask() • Update LCD with current time, current date, and current temperature reading •

UITask() • Update LCD with current time, current date, and current temperature reading • Update indicator LEDs with tracking mode currently in use • Period: 1 s • Execution Time: 10 ms • CPU Load: 1%

Estimated CPU Load Estimated Max CPU Load = 50% + 1. 67% + 0.

Estimated CPU Load Estimated Max CPU Load = 50% + 1. 67% + 0. 83% + 2% + 1% = 65. 5% • Less than 100% CPU Load

Modules

Modules

Azimuth Data

Azimuth Data

Data Flow: LCD Updates

Data Flow: LCD Updates

Data Flow: Solar Tracking

Data Flow: Solar Tracking