Alvin P. Schmitt
Electrical Engineer and Computer Specialist
Sequential, Asynchronous and Finite Automata
C Programing Language
BASIC, PL/1, Fortran, Assembler
IBM OS JCL
IBM 370 Assembler Language
IBM Series/1 EDL
GE 4020 Assembler
P89LPC932A 8051 Derivative
Microchip PIC Processors
Apple Macintosh OS
Embedded Computing and Interfacing
STAGE2 Context Sensitive
Finite State Machines
Abstract Language Development
Product Design and Development
Alvin P. Schmitt has 40 years of professional experience. Electronics started in 1958 and
computer languages started in 1968 progressing on an almost daily basis. Specialization is in analog
and digital electronics and computer interfacing and software ranging from Systems Programming to
Microprocessor RTOS, finite state machines and high level language development.
BS Electrical Engineering VPI&SU
Object Oriented Programming in Java by University of California, San Diego on Coursera. Certificate
earned on June 10, 2016
C++ for C Programmers UCSC Coursera August 6, 2016
1985 to Present - APSTRON LLC
All the following written in C Programming Language
Designed REFLOW controller for soldering SMT parts to circuit boards.
Designed Pyranometer controlled accumulation board for controlling a plant propagation mist system.
PIC RTOS - Wrote a real time operating system for the Microchip PIC1XF1XXX series of computers.
It is of a very small footprint using 16 bytes of ram for the task control block. The 1XXX series
contains the PIC12F and PIC16F computers.
BASIC INTERPRETER - This project is for producing a single board computer for
the PIC 32 bit line of processors. The user will write the programs using a PC or
terminal over a USB connection to the single board computer in APSBASIC. The
basic will allow access to the computer's peripherals such as I2C, SPI, ADC etc.
The program allows the following types: 32 bit signed integer, 32 bit floating
point, string variables and constants and eight (8) bit character variables plus one
bit logic variables for the logic comparisons. The board has built in eeprom
storage for user programs and allows up to 10 programs to be automatically
selected and run upon powerup. A further project will be the addition of a real
time clock and SD card interface. This will allow the user to acquire data and be
able to remove the card and replace it with another to continue data acquisition
and to process the removed card at his home PC. Since the BASIC is interpreted
the user need not have a computer flash programmer or programming system but
can write and immediately execute the software on the single board computer.
WEATHASTIC MIST CONTROL SYSTEM - This ongoing project uses light, temperature and
humidity to control mist off times for plant propagation using cuttings. Since these cuttings have no
roots they must be kept turbid with mist to remain alive. Too much mist and the plants rot. Too little
mist and the plants dry out and die. The current misting systems use timers but if the sun comes out or
the wind blows the plants can dry out and die between mists. This system optimizes the amount of mist
on the plants to maximize growth and minimize water run off. WEATHASTICs are linked via RS485 in
a daisy chain manner to a controller that allows the user to adjust settings for each greenhouse the
weathastics are in. Misting valves (up to 16) will be linked to greenhouses and weathastics and the
controller allows for complete control of the misting process.
SERIES TANK SLOPE DETECTOR WITH TEMPERATURE COMPENSATED EMITTER
FOLLOWER - This item is patent pending. Using either an inductive or capacitive
sensor and a 13.56 MHz oscillator the device allows varying current flow
depending on moisture on a capacitive sensor or ferrous metal with the inductive
sensor. Current is converted to a voltage which is sampled by a high impedance
voltage follower that is temperature corrected for accuracy. Voltage output is
directly proportional to material on or near the sensor.
8051 RTOS CONVERSION TO AN NXP P89LPC932A1 - The NXP processor needed an RTOS
for which I converted one devised by a professor at the University of Cyprus.
EAGLE CAD SOFTWARE - All PC boards are drawn using the CadSoft EAGLE
software package. I am proficient with this software and my board house (PCBPOOL)
is quite happy to accept board's laid out with this software.
MENU GENERATION AND MANIPULATING SOFTWARE LANGUAGE - For menu
systems with UP, DOWN, LEFT, RIGHT, CANCEL and ENTER buttons a language
was written with which to indicate state transitions in the menu. Included in the
language were 1) Menu text, 2) transitions for each button, 3) A symbol table for
state transition labels and associated actions for the leaf menu items. Language
was compiled into INTEL ROM format text so that a rom could be burned with the
state machine transfer information. Software was written to access the rom and
follow the transition path whose input was the button pushes. Menus could be
debugged on the PC by emulating the rom and associated control software.
LABORATORY DEVICE TO CHARACTERIZE VARACTOR DIODES - Varactor diodes were
used in the phase locked loop analog version of the mist sensor. Device would apply high and low
voltages to the varactor diode which represented the sensor empty and full of mist. The diode's
capacitance would be determined by the frequency of an associated oscillator.
EMBEDDED SOFTWARE IN C FOR DETECTING AND CONTROLLING MISTING IN
PLANT PROPAGATION USING CUTTINGS- All software was written in the C language for the
8051 derivative P89LPC932A1, The PIC16F88 and other processors as well as the BASIC interpreter
running on the PC and compiled with GCC.
PHASED LOCKED LOOP MISTING CONTROL SYSTEM - The analog version of the
mist control system used a phase locked loop where the capacitor in the voltage
variable oscillator was the moisture sensing capacitive sensor. The voltage to the
oscillator would be the output of the phase comparator and the output of the VCO
would be directly proportional to the moisture on the sensor. The more moisture
on the sensor the higher its capacitance and the lower the frequency of the VCO.
A fixed crystal oscillator of about 10 MHz was applied to one input of the phase
comparator and the output of the VCO would be the second input to the phase
comparator. The VCO was set so that a dry capacitive sensor would cause it to
oscillate at 10MHz. As the VCO would lower in frequency the output error voltage
of the phase comparator would increase increasing the VCO output frequency.
Thus the rise in error voltage would be in direct proportion to the increase of
moisture on the capacitive sensor.
CERAMIC FRINGING CAPACITIVE MOISTURE SENSOR - A capacitive sensor
consisting of interdigital runs of silver on an alumina substrate, Fired to metalize
the alumina and covered with a glass glaze was constructed. The two sets of
metal runs on the alumina were not connected and intertwined with each other.
Artmaster tapeups were created and used to expose a silk screen which was used
to print the silver ink runs on the alumina substrate. Eight different glass frits
were obtained from FERRO Corporation and the glazes constructed to measure
each fit on the alumina substrate. Sensor is patented.
MIST CONTROL SYSTEM USING WATER AS A DIELECTRIC - The above sensor,
phased locked loop and controller as well as a digital version were constructed.
Water acted like a dielectric in the sensor capacitor. Sensor of the system is
ABSTRACT LANGUAGE USING THE STAGE II CONTEXT SENSITIVE MACRO
PROCESSOR - The context sensitive macro processor stage II was obtained from
Dr. Waite at the University of Colorado on 9 tract mag tape. Software was written
to transfer the the contents of the tape across town to a MAC XL on 10/31/1986.
Stage II is written in Stage II with FORTRAN glue routines. Assembler software was
written on the MAC XL for the 68000 processor to emulate the FORTRAN glue
routines. Testing of Stage II was performed using the associated macro testing
routines. Then macros were written to for a high level abstract language called
ALBAL. ALBAL was to be used for software development on the LISA 10/2 MAC XL.
1982 - 1985 VPI&SU Computing Center
TERMINAL IDENTIFICATION PROGRAM WRITTEN IN SERIES/1 EDL - Virginia
Polytechnic Institute and State University computer center had Series/1s runing
the YALE IUP for emulating the IBM 3270 terminals using ascii screen addressed
terminals. VPI&SU had 11 of these machines. I was system programmer for the
university and took care of these machines. I wrote software in the abstract
machine language EDL for the Series/1 to activate each time a terminal type was
requested from the Series/1 that would increment a count for that terminal type in
storage. Program ran in the background and provided the computing center with
the needed information to budget for various terminal types bought by the
university as to up to then there was no way knowing which terminal types were
being used by the various departments at the university.
SYSTEM PROGRAMMER AT VIRGINIA TECH - I was system programmer and
computer systems engineer at the computing center of VPI&SU. My duties
consisted of maintaining the Memorx glass tty (40 lines) to IBM channel computer
as well as the 11 IBM Series/1 processors that connected to individual smart
terminals and emulated an IBM 3270.
1976 - 1981 VPI&SU Electrical Engineering Department -
Research Associate for
the Computer Engineering Laboratory
IMPLEMENTED ANALOG SIGNAL TO AUDIO TAPE RECORDING SYSTEM FOR
DEBUGGING SOFTWARE TO AUTOMATE LABORATORY DEVICES SUCH AS GAS
CHROMATOGRAPHS, AUTO ANALYZERS, ETC. -
DEVELOPED SOFTWARE TO EMULATE JCL DD CARDS FOR TRANSFERING 700 TI980B
ASSEMBLY PROGRAMS TO MAGNETIC TAPE ON IBM MAINFRAME - A combination
of PL/1 and IBM Assembler was required to implement transfer. I found a hook in
the IBM 370 Operating System that allowed me to introduce DD cards that
described the location of the input file to be written to mag tape. Input was the
disk location of the files to be transferred. Performed the work for the State Labs
Project in the Electrical Engineering department.
LABORATORY AUTOMATION FEASIBILITY STUDY FOR A. H. ROBINS - I conducted a
feasibility study for A. H. Robins to consider how to automate their laboratory in
Richmond Virginia. I developed a computer weighting system to analyze the
various computer system considered and finally settled on a Data General large
mainframe like computer.
ARPANET LIKE MULTI NODE COMPUTER COMMUNICATION PROGRAM - I
debugged Dan Osecky's mulit node communications program written in TI(*)B
assembler language. Each node in the network would create a map of all directly
connected computers and pass this map through the network so that each
computer could find a path to each other computer on the network. Used two
TI980B minicomputers to debug the network with each computer's break point
system connected to the other computer's run light so that when one computer
stopped working it would immediately signal the other to stop so I could figure out
what happened in one computer when the other haulted.
SIXTEEN CHANNEL DIGITAL MULTIPLEXER WITH OPERATING SYSTEM HOOKS - I
designed a sixteen channel serial multiplexer that hooked into the TI980B general
purpose interface. Each channel had its own address. A fifo buffer for 64
characters was included and the system generated an interrupt when data was
available. Multiplexer would handle serial lines connected to instrument interfaces
which interfaced to laboratory instruments. I wrote the operating system software
to interface between the multiplexer and the user's programs.
1973 - 1975 Graduate Student in Computer Science and Applications
TRIDENT SUBMARINE SIGNATURE COMPUTER SYSTEM USING MY LOGIC
EQUATIONS - The computer system on the Trident Submarine used my digital
equations language system to output a signature that would tell personnel what
to do to fix the machine. A Electrical Engineering Graduate student obtained a
masters for my effort.
EQUATION DRIVEN WIRE WRAP LIST GENERATOR - I wrote, in PL/1, a wire wrap list
generator. I constructed macros for various TTL integrated circuits which would map gates to logic
equations entered by the user. I developed the digital equations language. Using the macros the user
would enter digital equations for a specific wire wrap board type. The program would allocate the TTL
gates from the ICs and place the ICs on the board. Using the equations the system would generate a
wire wrap list to make the connections to the gates according to the given equations. The list was
constructed in such a way as to minimize the number of wraps to be taken off to correct a wrap error.
The Trident Sub signature system used my equation language.
CARD READER TRANSLATOR - I designed and built a buffered and translating card
reader interface to the GE 4020 mini-computer. The device translated from the
card EBICDIC character set to the ASCII character set using the first ultra violet
erasing eprom for 256 bytes the 1701. I generated the table using a program on
the 4020 and then used the paper tape to program the eprom. The devices
control system consisted of a four state asynchronous state machine which would
compare the card reader's 12 bit input to the eprom and the address of the two
eproms that matched the bit pattern was the ASCII equivalent. A graduate
student devised the previous non working translator using diodes for the rom. He
obtained a Phd for his efforts. I received a passing grade for an undergraduate
special course. Device would buffer 64 bytes of ASCII information for the GE4020
computer. A second device was constructed that was used for the card reader
input of a GE 1600 computer re-purposed as an RJE terminal.
Capacitive Moisture Sensor - PATENTED
Moisture Sensing Using a Variable Slope Detector
9063067 Moisture Sensing Devices
Published papers available on request
Last Updated 12/20/2017 630195177aps