I have a number of fields of interest. Each year I'm generally involved with one or more projects in each one of these fields, or a combination of these fields. I've listed my fields of interest below, in no particular order, and provide a summary of what each area concerns and what my interests in the particular area concerns. I'm entirely willing to investigate other areas, but am trying to maintain a consistent focus related at least to the general aspects of embedded systems and smart sensor systems.
Research Areas
Area
Description
Smart Sensors
Smart Sensors are my new research passion! Yes, as the illustration suggests, it's fits well with the Industry 4.0 theme, but that's not the main reason I'm interested in this: it's effectively bringing together a variety of exciting topics, of embedded systems, of edge computing, of sensor design, of telecoms and networking as well as machine learning and possible cloud computing as well, where longer-term storage and AI methods, that draw on longer-term data, can reside.
As is mentioned on the ESSE home page, the processing of sensor data may happen at various stages, and at various levels, in the sensing system; e.g. in the 'smart sensor' node itself and further down the communication chain, which might end at a data centre. Also, at stages of the processing chain the sensor data may be augmented by other data that is fed into visualisation and decision-making services.
Embedded Systems (ES)
An embedded system is a single-purpose computer built into a larger system for the purposes of controlling and monitoring the system [1]. A general-purpose computer (e.g. a personal computer) is defined not to be an embedded system.
My interest in embedded systems is mostly related to embedded software, firmware and device driver design and coding. Products I'm interested in, and have had experience with, including various types of monitoring and control systems, radio/communication systems, radar systems.
Reconfigurable Computers / FPGAs
I'm a serious far of FPGA programming and the development and building of FPGA applications and of FPGA-based reconfigurable computing platforms. FPGAs are getting ever more powerful and the prices keep reducing, this is now making possible more sophisticated and more customizable systems than ever before. But the traditional way that programs (or more correctly, 'gateware') is developed for these processors can be, admittedly, a slow and frustrating processing. That is why I'm keen on any ideas and experimental tools that may in some way alleviate these challenges at least for particular application domains - which leads to the consideration for Domain Specific Languages (DSLs), I'm particularly interested in DSLs to support FPGA development.for particular application domains or type of sensor systems.
HPEC
HPEC, otherwise know as "High Performance Embedded Computing", is essentially High Performance Computer systems that are actually task-specific embedded systems. HPEC combines techniques of high performance and parallel computing with embedded systems. An example of such a thing is an high-speed tracking radar that is able to automatically classify targets without needing a network connection to a data center. The FLOPS needed for such a system is huge, but nowadays with low-power GPUs and multicore processors these massive amounts of FLOPS can be delivered in pretty small mobile packages, compared to the room of computers and big power draw that was needed a few years ago to achieve the same purpose. Traditional embedded systems have a number of development challenges, as in custom platforms, specialised modules and interfaces, possibly specialised compilers, among other difficulties... and HPEC system isn't necessary making this any easier for the developer; indeed it typically means more coding languges to know, greater design complexity and more paradigms to engage with, building the development of these systems to new highs of challenge.
AI and ML
Artificial Intelligence, Machine Learning - Neural Networks and other ML techniques.