- Pressure sensor: Comparison between ASDX series with ASDX DO series
- Evaluation and Development Boards for USB2507 (Integrated USB 2.0 Compatible 7-Port Hub)
- Draft algorithm for pressure sensor SCP1000 (updated on 02/20/2009)
- Note for searching the analog pressure sensors
- Pressure sensor requirements
- Possible USB hub chips (Jan.22.09)
- Study note for I2C interface (reference: Wikipedia)
- Battery Sensors Research
- Weekly Progress Report
- Weekly Progress Report (May.29.09 - Jun.05.09)
- Weekly Progress Report (May.22.09 - May.28.09)
- Weekly Progress Report (May.15.09 - May.21.09)
- Weekly Progress Report (May.08.09 - May.14.09)
- Weekly Progress Report (May.01.09 - May.07.09)
- Weekly Progress Report (Apr.24.09 - Apr.30.09)
- Weekly Progress Report (Apr.17.09 - Apr.23.09)
- Weekly Progress Report (Apr.10.09 - Apr.16.09)
- Weekly Progress Report (Apr.03.09 - Apr.09.09)
- Weekly Progress Report (Mar.27.09 - Apr.02.09)
- Weekly Progress Report (Mar.20.09 - Mar.26.09)
- Weekly Progress Report (Mar.06.09 - Mar.12.09)
- Weekly Progress Report (Feb.27.09 - Mar.05.09)
- Weekly Progress Report (Feb.13.09 - Feb.19.09)
- Weekly Progress Report (Feb.06.09 - Feb.12.09)
- Weekly Progress Report (Jan.30.09 - Feb.05.09)
- Weekly Progress Report (Jan.23.09 - Jan.29.09)
- Weekly Progress Report (Jan.16.09 - Jan.22.09)
- Weekly Progress Report (Jan.09.09 - Jan.15.09)
- ASIC-enhanced output
- Wide compensated temperature range from 0 °C to 85 °C
- Available in absolute, differential and gage types.
- Pressure range from 0 psi to 1 psi through 0 psi to 100 psi
- The absolute sensors have an internal vacuum reference and an output voltage proportional to absolute pressure
|ASDX Series||ASDX DO Series|
|Accuracy||Max ±2.0 %V||Max ±2.0 % H full scale|
|Output Resolution||N/A||Typical 12 bits|
|Quantization step||Typical 3 mV||N/A|
|Response time||Typical 8 ms||Typical 8 ms and Max 11 ms|
|I2C compatible protocol||No||Yes|
- Quantization step is the smallest change in the output voltage given any change in pressure.
- For 12 bits digital output, the smallest change in the output given any change in pressure is 5V/(2^12) = 1.22 mV
Therefore, the advantages of the digital output series are:
- The output resolution of the digital output is 12 bits, while the quantization step of the analog output is 3mV.
- The response time of the digital output one is typical 8ms with max 11ms, while the analog output one is 8ms with no data about the max response time
- The digital output one supports I2C compatible protocol while the analog one doesn't.
Datasheet for ASDX series:
Datasheet for ASDX DO series:
Notes for ASDX DO series with I2C interface:
Read operation: Start, Slave Address, R/W =1, Data Byte 1 (MSB), Ackn Bit, Data Byte 2 (LSB). The output is corrected pressure as unsigned 12 bits. Slave Address is F0h. Acknowledge Bit - pull data line LOW, master generates an extra clock pulse for this purpose.
- Therefore, ASDX015-DO is selected.
First, in order configure SCP1000 to operate with active MISO (default setting after start-up):
- Write 0x13 in indirect register 0x09 and wait for 100 ms. The actual write sequence in to indirect register is presented below:
- Write 0x09 in direct register 0x02 (ADDPTR)
- Write 0x13 in direct register 0x01 (DATAWR)
- Write 0x02 in direct register 0x03 (OPERATION -"write indirect register")
- Wait for 100 ms
Second, read the pressure and temperature data:
- Read the LSB of the STATUS register (0x07). If the content is '0', then the start-up procedure is finished successfully. Otherwise, re-check the STATUS register after 10ms delay
- In continuous measurement mode the output data is refreshed after each measurement and the availability of the updated pressure and temperature data is signaled through the assertion of the DRDY pin and a DRDY bit (Bit 5) is set to ‘1’ in the STATUS register (0x07).
- The selection and activation of the measurement mode is done by writing the corresponding mode activation code in to OPERATION register (0x03); Write "0x09" to the OPERATION register to get "High speed acquisition mode" start (continuous measurement). Use operation 0x00 to stop the continuous acquisition
- The temperature is stored in the TEMPOUT register(0X21) bits[13:0]
- The MSB of the pressure data is stored in the DATARD8 (0x1F) register bits[2:0], and the 16 LSB data is stored in the DATARD16 register (0X20)
I could not find any analog pressure sensor that has pressure range from 0kPa to 115kPa, and voltage supply is less than 3.5V.
The best one we found so far is "Honeywell ASDX-DO series". The problem with this one is the response time is 8ms.
- NOT the same requirements as the inertial navigation suite pressure sensor.
- MUST have pressure range of 0 - 1 ATM (0 kPa - ~115 kPa, 0 - ~15 PSI) or more
- Absolute pressure (needs onboard reference)
- SHOULD use (,3.3,5) V power supply
- SHOULD use (,10,50) mA current
- SHOULD have single ended analog output OR digital output
- MAY have quick response time < 1 ms (~ KHz of bandwidth)
- MUST have a small package size (0,1,10) cm^3
(I could not find the 8 downstream ones, What I list below are 7 downstream ones)
USB2507 -- Integrated USB 2.0 Compatible 7-Port Hub (chosen: It is a newer chip compared to ISP1521)
- Main features:(1) Integrated USB 2.0 Compatible 7-Port Hub;(2) Complete USB Specification 2.0 Compatibility;(3) 1.8 Volt Low Power Core Operation;(4)3.3 Volt I/O with 5V Input Tolerance.
- Datasheet: http://www.smsc.com/main/datasheets/2507.pdf
- Available in Digi-Key, $8.75 for one
ISP1521 --Hi-speed Universal Serial Bus hub controller
- Main features: (1)Supports data transfer at high-speed (480 Mbit/s), full-speed (12 Mbit/s) and low-speed (1.5 Mbit/s);(2)Self-powered capability;(3)Configurable number of ports;(4)Port status indicators;(5)Supports temperature range from -40 °C to +70 °C.
- Datasheet: http://www.nxp.com/acrobat_download/datasheets/ISP1521_4.pdf
μPD720113 -- USB 2.0 7 ports HUB CONTROLLER (Not good -- Need both 2.5V and 3.3V power supply)
- Main features: (1)Compliant with Universal Serial Bus Specification Revision 2.0 ;(2)7 (Max.) downstream facing ports;(3)All downstream facing ports can handle high-speed (480 Mbps), full-speed (12 Mbps), and low-speed (1.5 Mbps) transaction;(4)Support self-powered mode;(5)2.5 V and 3.3 V power supplies.
- Datasheet: http://www.necel.com/nesdis/image/S16618EJ3V0DS00.pdf
FT8U100AX -- 7 Port USB hub controller (Not good-- USB 1.1 specification compliant)
I²C uses only two bidirectional open-drain lines, Serial Data (SDA) and Serial Clock (SCL), pulled up with resistors. Typical voltages used are +5 V or +3.3 V although systems with other, higher or lower, voltages are permitted.
The I²C reference design has a 7-bit address space with 16 reserved addresses, so a maximum of 112 nodes can communicate on the same bus. The most common I²C bus modes are the 100 kbit/s standard mode and the 10 kbit/s low-speed mode, but clock frequencies down to DC are also allowed. Recent revisions of I²C can host more nodes and run faster (400 kbit/s Fast mode, 1 Mbit/s Fast mode plus or Fm+, and 3.4 Mbit/s High Speed mode), and also support other extended features, such as 10-bit addressing.
The maximum number of nodes is limited by the address space, and also by the total bus capacitance of 400 pF, which restricts practical communication distances to a few meters.
The master is initially in master transmit mode by sending a start bit followed by the 7-bit address of the slave it wishes to communicate with, which is finally followed by a single bit representing whether it wishes to write(0) to or read(1) from the slave.
If the slave exists on the bus then it will respond with an ACK bit (active low for acknowledged) for that address. The master then continues in either transmit or receive mode (according to the read/write bit it sent), and the slave continues in its complementary mode (receive or transmit, respectively).
The address and the data bytes are sent most significant bit first. The start bit is indicated by a high-to-low transition of SDA with SCL high; the stop bit is indicated by a low-to-high transition of SDA with SCL high.
If the master wishes to write to the slave then it repeatedly sends a byte with the slave sending an ACK bit. (In this situation, the master is in master transmit mode and the slave is in slave receive mode.)
If the master wishes to read from the slave then it repeatedly receives a byte from the slave, the master sending an ACK bit after every byte but the last one. (In this situation, the master is in master receive mode and the slave is in slave transmit mode.)
The master then ends transmission with a stop bit, or it may send another START bit if it wishes to retain control of the bus for another transfer (a "combined message").
- MUST monitor charge ("coulomb counter")
- MUST measure pack voltage
- SHOULD: monitor the voltage on each cell
- MUST monitor battery pack temperature (MUST be compatible with charging chip)
- SHOULD separate high current connector from sensing connector
I searched the battery monitor in Digi-key website, and it shows that there are three companies making the chips: Texas Instruments, Dallas Semiconductor/Maxim-ic, and Microchip Technology. I also looked at Fairchild and Intersil.
I searched the battery monitors in the five companies' websites. TI and Microchip technology don't have any chip that monitor 4-cell Li-ion Battery. The only chip that works with 1-10 cell Li-ion Battery is DS2788 from Maxim. Here is the datasheet for DS2788: http://pdfserv.maxim-ic.com/en/ds/DS2788.pdf
- DS2788 measures voltage, temperature, and current
- Absolute and Relative Capacity Estimated from Coulomb Count, Discharge Rate, Temperature, and Battery Cell Characteristics
- Disadvantages: Use 1-wire interface and it requires a 5V voltage regulator.
What I also need is a chip that monitors individual cell voltage. The Intersil company has three chips that might work, which are ISL9208, ISL9216/9717, and ISL94200. All of them use I2C interface. Here are the datasheets:
ISL9208: http://www.intersil.com/data/fn/FN6446.pdf. The ISL9208 supports battery pack configurations consisting of 5-cells to 7-cells in series and 1 or more cells in parallel.
ISL9216/9217: http://www.intersil.com/data/fn/FN6488.pdf. It provides integrated overcurrent protection circuitry, short circuit protection, an internal voltage regulator, internal cell balancing switches, cell voltage level shifters, and drive circuitry for external FET devices that control pack charge and discharge. The load monitor current is (20,40,60)μA and <10μA sleep mode.
ISL94200: http://www.intersil.com/data/fn/fn6718.pdf. It does almost same thing as ISL9216, except that it doesn't have the internal cell balancing switches. The advantage of this chip is that it monitors internal and external temperature by a separate microcontroller with an A/D converter. However, the DS2788 already monitors the temperature. We don't need this feature.
So far, I think we can use DS2788 with ISL9216/9217 to monitors voltage, current, temperature and cell voltage for the battery sensor. However, they use different interfaces. One uses 1-Wire, and the other one uses I2C.
The draft Eagle schematic for the battery sensor: 1st attempt.sch
Note: I haven't entered the value of the resistors, capacitors and transistors yet. I am not sure what criteria I should use to choose the right value. Also I need to learn how to change the size of the package in Eagle.
The modified Eagle schematic for the battery sensor(Apr. 19): final draft battery sensor.sch
Function of ISL9208 (Application note: Designing Multi-Cell Li-ion Battery Packs.pdf) :
VC7, CB7,...,VCELL1,CB1: Cell balance circuit with 4-cell battery. (Note: adding a series resistor on each of the cell inputs reduces the initial current surge through the inputs, but it affects the accuracy of the cell measurements. A series of 15ohms resistor will add about 1mV of error to the cell voltage reading.)
DSREF, DSENSE, CSENSE: Monitor the discharge current and charge current by monitoring a voltage across a sense resistor
AO: Analog multiplexer output, which is used by an external micro-controller to monitor the cell voltages and temperature sense voltage.
TEMP3V, TEMPI: Temperature monitor. TempI pin inputs the voltage across a thermistor to determine the temperature of the cell; TEMP3V pin outputs a voltage to be used in a divider that consists of a fixed resistor and a thermistor.
RGO: Regulated output voltage, this pin connects to the emitter of an external NPN transistor and works in conjunction with the RGC pin to provides a regulated 3.3V;
RGC: Regulated output control, This pin connects to the base of an external NPN transistor and works in conjunction with the RGO pin to provide a regulated 3.3V. The RGC output provides the control signal for the external transistor to provide the 3.3V regulated voltage on the RGO pin. The 500ohms resistor in the collector reduces the initial current surge when the regulator turns on.
WKUP: Wake up voltage.In an active LOW connection (WKPOL = “0” - default), the device wakes up when a charger is connected to the pack. This pulls the WKUP pin low when compared to a reference based on the VCELL1 voltage. Please see the figure 9 of the application note for more information.
SDA: Serial Data
SCL: Serial Clock
Note: We didn't use the over-current protection circuit in this chip.
Function of DS2788:
Precision Voltage, Temperature, and Current Measurement System with 1-wire interface
LED1,...,LED5: Display Driver. Connect to an LED connected to VDD for display of relative pack capacity.
VDD: Power-Supply Input. Connect to the RGO pin of ISL9208.
DVSS: Display Ground. Ground connection for the LED display drivers. Connect to VSS.
OVD: 1-Wire Bus Speed Control. Input logic level selects the speed of the 1-Wire bus. Logic 1 selects overdrive (OVD) and Logic 0 selects standard (STD) timing.
VSS: Device Ground. Connect directly to the negative terminal of the battery cell. Connect the sense resistor between VSS and SNS.
SNS: Sense Resistor Connection. Connect to the negative terminal of the battery pack. Connect the sense resistor between VSS and SNS.
VIN: Voltage Sense Input. The voltage of the battery cell is monitored through this input pin.
VMA: Voltage Measurement Active. Output is driven high before the start of a voltage conversion and driven low at the end of the conversion cycle.
DQ: Data Input/Output.
PIO: Programmable I/O Pin.
Attended the poster presentation on May.29
Made the modification for the layout board of the battery sensor.
- Prepare the final presentation slides.
Talked to Tim about the layout of the battery sensor in the weekly meeting
Modified the layout board
Prepared for the poster presentation on May.29
- Andrew and Tim will decide how to place the battery sensor board in the rocket and I will make the modification for the layout after they make the decision.
Studied how to make the layout board in Eagle
Built the draft layout board of the battery sensor in Eagle.
- Organize the documentation of my part for the capstone project.
Continue worked on the documentation of the battery sensor in the web page.
Completed the poster for the presentation.
- Study how to make the layout board of the battery sensor.
Worked on the documentation of the battery sensor in the web page.
Discussed about the poster for the presentation.
Prepare the poster for the presentation.
Maybe make the layout board of the battery sensor.
- Modified the Eagle schematic for the battery sensor after the design review meeting on Apr.28.
- Attend the weekly meeting on May.1st and connect the whole schematic for layout.
- Modified the Eagle schematic for the battery sensor mostly for the format of the schematic.
- Attend the weekly meeting on Apr.24 and connect the schematics together.
Modified the Eagle schematic for the battery sensor.
Wrote the documents about the function of the battery sensor.
- Attend the weekly meeting on Apr.17 and discuss what to do next.
Discussed with Tim during on Tuesday's meeting and learned how to build the chip in Eagle from scratch.
Modified the symbol and package(draft) of ISL9208 and DS2788.
Modified the Eagle schematic (draft) for the battery sensor.
- Continue with the battery sensor Eagle layout.
Discussed with Tim during last week's meeting and learned more about the chips that I am using.
Studied the Eagle program, and made the symbol and package(draft) of ISL9208 and DS2788 from scratch.
Completed the Eagle schematic (draft) for the battery sensor.
Modify the packages of ISL9208 and DS2788 in Eagle, since I haven't enter the right size of the chips and pins yet.
Attend the meeting on Tuesday and ask for some help about my questions.
Studied the datasheet and the application notes for ISL9208 and DS2788.
Completed the hand-draw schematic for the battery sensor using ISL9208 and DS2788
Build the ISL9208 and DS2788 in Eagle.
Study more about the parameters in the ISL9208 and DS2788 and choose the resistors and capacitors for the schematic.
- Searched for the battery monitor/fuel gauge that monitors the voltage, current, temperature and cell voltage.
Pressure sensor test on Mar.13.09.
Draft circuit for the battery sensor using DS2788 and ISL9216/9217.
Read the data sheet of ZMD31020 Sensor Signal Conditioner.
Searched for the battery monitor/fuel gauge that monitors the voltage, current and temperature.
- Continue searching for the battery monitor/fuel gauge.
Attended the weekly meeting on Feb.13.
Modified the draft algorithm for the pressure sensor VTI SCP1000 with SPI interface.
Compared between ASDX series with ASDX DO series
Continued studying the document: "USB in a nutshell".
- Study the I2C interface with ASDX DO series.
Attended the weekly meeting on Feb.06.
Wrote the draft algorithm for the pressure sensor VTI SCP1000 with SPI interface.
Searched for the integrated pressure sensors from the companies that were listed in the digi-key website.
Study the document: "USB in a nutshell", not finished yet.
Continue studying the document: "USB in a nutshell".
Refine the algorithm for the pressure sensor VTI SCP1000.
Attended the weekly meeting on Jan.30.
Went to Erik Sanchez's physics lab with Andrew and Tim in SB2 and looked at his vacuum chamber.
Searched for the integrated pressure sensors.
Choose the 7-port USB hub and integrated pressure sensor.
Write the algorithm for the pressure sensor.
Note for integrated pressure sensors
- Freescale semiconductor company has a lot of integrated pressure sensors.
- This link http://www.freescale.com/webapp/sps/site/taxonomy.jsp?nodeId=01126990368716 shows the different parameters for different pressure sensors.
- The MPXH6115A, MPXH6250A, and MPXH6400A are High Temperature Accuracy Integrated Silicon Pressure Sensors for Measuring Absolute Pressure, On-Chip Signal Conditioned, Temperature Compensated and Calibrated. The difference between them is the max pressure in the pressure range. The MPXH6115A is 15 to 115 kPa; The MPXH6250A is 20 to 250 kPa; The MPXH6400A is 20 to 400 kPa.
Attended the weekly meeting on Jan.23.
Attended the PSAS Tuesday meeting. Met with Maria. She contacted her friend in Physics Department and tried to set up an appointment for pressure sensor test. We tried to do the test within two weeks.
Learned about the Serial Peripheral Interface Bus in Wikipedia.
Read about the Data sheet and the Product Family Specification for SCP1000 and learned how to use the SPI Interface.
Write the draft algorithm to get the data to SCP1000 with SPI Interface.
Attend the weekly meeting on Jan.29 and see what I need to do next.
Attended the weekly meeting on Jan.16.
Attended the PSAS Tuesday meeting. Dan explained to me about how the pressure sensor works. Since we need another good pressure sensor to calibrate the data, we need help from the Physics department. We will work on the pressure sensor test in the following weeks.
Searched for 7-Port or 8-Port USB Hub Controller. I couldn't find any 8-Port USB hub controller. However, I found some 7-Port ones. I listed the chip information on my iki's notebook.
Attend the weekly meeting on Jan.23.
Attend the PSAS Tuesday meeting and Meet with Maria and Dan, discuss more about the pressure sensor test.
First meeting of this term
- Assigned task to team member
- Went over the system requirement
- Reschedule the weekly meeting to every Friday from 2:00pm to 4:00pm
- Might have workshop on some Tuesdays
Downloaded Eagle and installed it in the laptop
Read the document about the pressure sensor, 3D Magnetometer, Inertial Measurement Units, and data sheet for VTI SCP1000
Ask for more information about the pressure sensor during the weekly meeting
Learn more about the pressure sensor, I don't have a specific direction yet
Does the sensor include the pressure sensor 3D magnetometer and IMU?
The pressure range of VTI SCP1000 is 300 - 1200 mbar, but we want one that goes at least from 10 mbar to 1013 mbar. Does that mean that we need to find another pressure sensor and test it?
Are there any difficulties in finding the right pressure sensor that satisfy our requirement? What parameters should I pay more attention to?
Using iki to write down WPRs and notes
We might have workshops on some Tuesday nights at 7:00pm
The schedule of weekly meeting may change to 2:00pm on Friday
We talked about the requirement of the project and useful links
- SPS: Ken, Scott, David
- Firmware: Mike, Jeremy
- Sensor/Radio: Ailing
Finish WPR before next meeting(01/16/2009) including what I read, questions, and what I plan to do next.