Atmel Mega163 Microcontroller - We used this microcontroller clocked at 4Mhz because of it's ADC on chip. We needed this feature to sense the temperature. Temperature input is received through port A, which it checks once every half a second. Directional data from the photointerrupters is received through the B.0 - B.3; one pin connected to each photointerrupter output. Wind speed data is collected by triggering external interrupt 0, pin D.2, with the photo interrupter output sensing the anemometer rotation. The transceiver is connected to port D with the following pin connections. D.1, which is also TXD for the UART, is connected to TXD on the transceiver. RX select and TX select for the transceiver are connected to pins D.6 and D.5 respectively. The UART on the chip is set to transmit at 2400 baud since we are sending very little data, we want to provide as much room to compensate for error signals on the RF link as possible. Sending data at the slowest speed possible is one way to help this situation.
LM34 Temperature Sensor - This is an integrated circuit temperature sensor which outputs Fahrenheit degrees in 10mV increments. Since this is a very sensitive measurement, we put the microcontroller to sleep during the measuring time period.
LMC7111 Op Amp - We use this as part of a 2x gain, negative feedback circuit doubling the output of the LM34 temperature sensor. This allows use to use more of our 2.5 volt range which can be sensed by the Mega163 and having 20mV per degree doubles the resistance to ambient noise.
Panasonic CNA1301H Photointerrupters - This integrated packages contain one photodiode and a photo detector transistor. The slot width is 1.4mm on this model. We have set them up such that the photodiode is always transmitting light and thus the photo detector circuit emits a high output when the slot is open and a low signal when the slot is blocked. We use four of these to determine wind direction and one to determine wind speed.
Radiometrix BiM2 433-64 Transceiver - This is used to establish an RF link with the remote display unit. It is used as a transmitter only for this unit and emits the incoming UART bits from the Mega163 on a 433Mhz signal to the other transceiver.
Direction Detection - We used four photo interrupters to determine the position of a fin that will be blown back by the wind. The sensors can detect when the fin is pointed in their direction, or halfway between theirs and the next one, thus giving us eight detectable directions.
Speed Direction - To detect speed, we used the external interrupt of the chip to count the number of rotations of the anemometer for a certain amount of time. Since we chose a half second, we had to make several interruptions (8) per single revolution of the anemometer. This allowed a finer detection of slower wind speeds, while not reducing our maximum detection ability. According to our calculations, the maximum detectable speed is more likely limited by the size of a character than any of the electrical components' switching times.
Remote Disply Unit:
Atmel 90s8515 Microcontroller - This is a slightly simpler microcontroller than the Mega163, thus we used it for the remote display, which did not require an ADC. Port C is used to output the received data to the LCD for the user to see. Just like on the Detector Unit, the transceiver is connected to port D, however here it is used as a receiver only. D.0, which is also RXD for the UART, is connected to RXD on the transceiver. RX select and TX select for the transceiver are connected to pins D.6 and D.5 respectively and CD is connected to D.4. The UART on the chip is set to receive at 2400 baud since we are sending very little data, we want to provide as much room to compensate for error signals on the RF link as possible. Sending data at the slowest speed possible is one way to help this situation. A pushbutton is connected to port A so the user may toggle between the wind status display and the temperature status display.
2x16 LCD Display - This is a small LCD display which can display letters, numbers, and some miscellaneous characters. On our prototype we only used the top line of the display such that a single line display could be used in a future version to make a smaller, more portable display.
Radiometrix BiM2 433-64 Transceiver - This is used to establish an RF link with the detector unit. It is used as a receiver only for this unit and receives incoming bits from the other transceiver on a 433Mhz signal and passes them through a UART serial connection to the 90s8515 microcontroller.