Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Hardware

The Controls leader board takes in a 12V line from BPS called POW_2ND_CONN and is routed back out to Power Systems (Power Board) as BPS_PWR_OUT. The 12V line is on the 12V power domain and is either cut off from ground or connected to GNDPWR, which is the 12V ground. This line goes through a rotary switch which determines whether current goes through the photocouplers or not. Photocouplers allow for logic to be done across two power domains, as seen here. If a photocoupler has current, then the transistor on the other side allows current to conduct, creating a short circuit. On the other side of the photocouplers, is a GPIO input that is pulled up to 3.3V (3V power domain). The MCU reads HIGH if the photocoupler has no current going through it since there is an open circuit to ground. Once the photocoupler receives current, it creates the short circuit meaning the node which the GPIO input sits on is now GND and the MCU reads LOW.

Precharge

We go through the Array and Motor states so that we can precharge the array and motor. These two are attached to the HV+ and HV- terminals and disconnected with contactors initially. For both, since they are at undetermined voltages, we need to let them slowly reach the voltage of the battery so that no big voltage spikes occur. We do this using a precharge resistor. We let BPS handle this precharge. We let them know that we switched states and they let us know when the precharge is finished. More on this is in the Software section.

Sequence

The following are the steps in the sequence of the rotary switch. The first step is when the rotary switch is turned clockwise all the way from the perspective of the user.

  1. POW_2ND_CONN and BPS_PWR_OUT are disconnected meaning other systems are turned off as well. IG1/2 are 11.
  2. POW_2ND_CONN and BPS_PWR_OUT are connected meaning other systems are turned on. We call this the low voltage (LV) step. IG1/2 are 11.
  3. Current flows through the photocoupler on IG1 meaning IG1/2 is 01. This is called Array. This is where we precharge the array.
  4. Current flows through the photocoupler on IG2 meaning IG1/2 is 10. This is called Motor. This is where we precharge the motor and the car is fully turned on.
  5. Same as 4.
  6. Same as 4.

Software

Controls has a task which reads the ignition switches periodically and assess which state we are in. If it is 11, we are in LV. If it is 01, we are in Array. If it is 10, we are in Motor.

TODO: Not sure what exactly we do in each state in terms of software.

  • No labels