Blackbody v.1.0.0

 

Old design: GitHub - lhr-solar/Blackbody: Firmware for the Array Blackbody boards.

Blackbody A - central board to read temperature and light intensity data for MPPT algorithm input and telemetry data

Blackbody B - for testing irradiance per cell, module, and array

Blackbody C - holds the irradiance sensors (and potentially the temperature sensors)

 

New plans

  • We realized that stretching I2C wires over long distances is problematic due to noise and increased capacitance, which would decrease the stability of our information. Adding an I2C extender should improve stability.

  • The irradiance sensors have unchangeable addresses, resulting in address conflicts. Adding a mux will allow us to have multiple I2C connections.

  • Why have we used RTDs specifically for temperature measurements? Thermistors and thermocouples are more commonly used for solar panel temperature measurement.

    • D2 said they can embed thermocouples into the solar modules. These would give us more precise data about the solar module temperature.

    • We can also use our own temperature sensors to measure the ambient temperature (temperature of the air around the solar panel). Thermistors are cheaper and more accurate than RTDs, and while RTDs go up to higher temps, for our application thermistors should cover our range.

  • Adding a mux to decrease the number of pins needed to read temperature data (and decrease number for R2Ds needed)

  • Considering the possibility of putting the temperature sensors and irradiance sensors on the same board (blackbody c). This could reduce wiring needs, especially if we also end up using the back-of-module sensors.

  • 11/24/24 - redesign using daisy-chaining → will consolidate wires, making it easier to wire and allow for us to add more sensors/boards without having to redesign the entire array

    • Measure only thermocouple temperature since that’s the more accurate temperature as compared to the thermistor for ambient temperature measurement

 

Decisions

Layout
  • # blackbody A = 2

    • One blackbody A per MPPT/array section (front/back of car)

    • combine both irradiance + temp sensors on blackbody C

  • # blackbody C = 3 for front array, 4 for back array

    • 1 irradiance and 1 ambient temp sensor (thermistor) per blackbody C

  • Type T thermocouples embedded in the modules (~1 per blackbody C) provided by D2

Layout
  • # blackbody A = 2

    • One blackbody A per MPPT/array section (front/back of car)

    • combine both irradiance + temp sensors on blackbody C

  • # blackbody C = 3 for front array, 4 for back array

    • 1 irradiance and 1 ambient temp sensor (thermistor) per blackbody C

  • Type T thermocouples embedded in the modules (~1 per blackbody C) provided by D2

Thermistor + reader
Irradiance
Mounting strategy
  • Blackbody c - drill a hole in the top shell in between modules or cells (depends on how cells are arranged), 3d-print tube enclosure )if necessary) to thread wires through and hold sensors above array, tube will go through the top shell and wires will connect to blackbody c attached to the underside of the top shell (must talk to aero for this)

 

sensor board (irr + temp sensors)

---------------------------------------------top shell---------------------------------------------

wires (possibly with enclosure)

---------------------------------------------top shell---------------------------------------------

blackbody c attached to bottom of shell

Daisy-chaining vs. webbing
  • Daisy-chaining: two i2c lines (temperature and irradiance), requires more components but less wires and easier to add additional components to the line

    • Irradiance: i2c translator + extender on blackbody c

    • Temperature: i2c extender + ADC (where digital output = i2c) on blackbody c

      • can also do blackbody a > blackbody c 1 > i2c converter + irradiance sensor > ADC > extender > blackbody c 2 > …

  • Webbing: line per blackbody c webbing from blackbody a, less components needed but wires are more all over the place, harder to add additional components to the line

    • Irradiance: i2c translator on blackbody c (extender less needed)

    • Temperature: ADC + mux on blackbody a

 

Blackbody A

Hardware Requirements:

  • Purpose: to obtain the data from blackbody c and send it to the rest of the car

  • Components:

    • controller:

      • MCU:

      • JTAG/SWD:

    • comm_can:

      • CAN communication

    • power_reg

      • 12V to 5V power-stepping

    • bbc_comm:

      • I2C connection

Blackbody C

Hardware Requirements

  • Purpose: to collect temperature and light intensity data of the solar array

  • Components:

    • sensing_temp:

      • Type T Thermocouple reader:

    • sensing_irr:

      • Irradiance sensor connection (3V3, GND, SDA, SCL)

      • Irradiance sensor: TSL2591, can run at slower speed to limit noise and can collect irradiance data at slower intervals to limit computational power used

      • I2C communication/noise regulation

      • I2C address translator: Adafruit LTC4316, connected to voltage divider to determine address

    • connections:

      • I2C extender: connects to other boards to reinforce longer distance signal

      • I2C connection back to previous board (blackbody c or a)

 

Sensor Board

Hardware Requirements

  • Purpose: to house the irradiance sensor

  • Components:

    • Irradiance sensor: TSL2591, can run at slower speed to limit noise and can collect irradiance data at slower intervals to limit computational power used

    • Connector to blackbody C (preferably on bottom of board to wire down to blackbody c)

    • Thermistor: NTCLE203E3103GB0 connected to voltage divider to measure ambient temp

 

 

 

 

 

Related pages