Para ello necesitas un Modem GSM con puerto serie, del cual hay varios en el mercado. Este modem lo puedes conectar a cualquier PLC que disponga de puerto serie, y a partir de ahí realizar un programa que a base de comandos AT realice la función que deseas.
En mi opinión hay bastante trabajo por hacer. Hay otras soluciones más sencillas:
1) Utilizar el uPLC Digital F18, que incorpora puerto Ethernet. Sobre este programando en MPLAB (Microchip ofrece sin cargo TCPStack con bastante documentación) se puede realizar un servidor de páginas Web que permita controlar calefacción o cualquier maniobra.
Este uPLC se puede conectar directamente a un router ADSL, en el cual habrá que redireccionar algunos puertos. El router por otra parte habrá que indicarle que debe conectarse con un servidor dinámico para que tenga un nombre. Este nombre permitirá un acceso sencillo, por ejemplo miNombre.homeip.net http://www.dyndns.com/.
De este modo un teléfono movil moderno con acceso a internet podrá acceder directamente al uPLC Digital F18, y así controlar lo que se desee.
2) Dado que el precio de los ordenadores ha caído, no se debe descartar en lugar de utilizar un uPLC montar un servidor. En el mercado hay placas marca Intel basadas en procesador Atom a precio muy ajustado.
Sobre esta placa se puede montar un servidor Web, basado en Linux y Tomcat. A este servidor se le podrían conectar una serie de módulos de entrada salida, que podrían ser accedidos desde una aplicación Java. Esta solución parece algo más engorrosa que la anterior, pero no es así. Programar en Java es bastante más sencillo y productivo que hacerlo en C.
Por mi experiencia, un ordenador de bajo coste actuando como servidor Linux es bastante fiable y no da problemas ni requiere mantenimiento.