473,320 Members | 2,083 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,320 software developers and data experts.

How to home monitor / automate using pc?

Hello everyone. I don't know if this is the right forum for this question. First let me say, I have never written any code for computers, I would not know how or where to start. But I think I could do it (for my limited application goals), if I knew what would work to achieve my ends. I would like to use my computer, to control and monitor the status of my garage doors, various temperature and humidity sensors in the house, control my thermostat. Is C/C++ what I would use to write code to control this type of equipment? Could it be done in DOS. What kind of control program would I need to purchase (software) to run the code? As I said I am a novice and am working this project to satisfy my own ends. I'm just looking for a place to start.
Thank you for your time.
John
Aug 20 '12 #1
2 25402
Banfa
9,065 Expert Mod 8TB
I've moved this to the software development forum because I believe you do not want to limit your question to C/C++ answers.

The real 1st question to answer is how to you intend to interface to all the hardware sensors you are suggesting?

Will you wire the directly to you PC (a lot of wiring) or will you actually attach the to small local modules that can then be attached to some sort of bus or network that your PC can contact (less wiring but probably more expensive in hardware costs and obviously more things to learn).

If you are going to wire directly to your PC then you will need all sorts of digital and analogue input and output cards which you will need to write software to interface to, either writing drivers yourself or interfacing to 3rd party drivers. These 3rd party interfaces are likely to be either C libraries or .NET assemblies.

On the other hand if you have remote units then at the PC you just need to implement the protocol (there are many) but basically it is send and receiving data over the appropriate interface for example serial such as RS485 or CANBUS or ethernet.

There are a whole plethora of devices you can get for this sort of application

PLC's (programmable logic controllers) that have an expandable number of inputs in the form of modules added onto a base unit, where the base unit can be either dumb or intelligent and if it is intelligent it needs programming. An example of this is the Turck unit.

Smaller stand-alone units that provide a fixed set on i/o such as Adam units with different connection options (ADAM-4000 series uses serial, ADAM-6000 series uses ethernet).

Using a small micro controller to create you own outstation units, something like the PIC or Rabbit or even Raspberry PI but some programming of your own would be involved.


Once you have decided on the sort of architecture that you want to use for the hardware then you can decided on how you are going to approach programming the central PC, but obvious choices are
  • C/C++ particularly if you need to write device drivers for the PC for i/o input boards.
  • A .NET language such as C# or VB.NET or even C++/CLR (again if some low level programming is also required) especially if you have bought i/o units (such as Adam or Turck) and only need to write a serial or Ethernet based comms protocol to talk to them.
  • You could consider running as some sort of web-service allowing your PC to become a server that an PC in the house can connect to to get to the house control web-site. You would also need to know some html/css and web-site design to do this.

You might want to ask yourself do you want to keep a database? That is do you just want to be able to get the readings right now or do you want to be able to store and access historical data for the house, in which some sort of archive and retrieval system is require a database being the most obvious system of that kind, although not necessarily the best suited to this application.


I would have to ask why you are considering DOS, which is well out of date. If you are after running this on an old computer with low resources (memory/processor/hard disk) then I would say Linux would be a better choice than a operating system that frankly I wouldn't even know where to buy any more.
Aug 20 '12 #2
WOW Banfa, thanks for that reply. I think that is way out of my level of competence. What if I approach it from a hardware standpoint. Building breadboards (maybe arduino) 'probably mis spelled that'. Instead of using software, for example, I could build hardware that would emit the correct rf signal to open/close the garage doors. I would not be able to create a data table without manual entry but that is ok. Hardware based on plc, (if/then) type logic. I could control the majority of items I am wanting to manipulate. What is a good entry level plc program that I could buy and learn to use.

I apologize for my non existant level of expertise.
John
Aug 25 '12 #3

Sign in to post your reply or Sign up for a free account.

Similar topics

4
by: yoyo | last post by:
Is there any way in DB2 to get the exact command. I have an event monitor I created for statments, and all the statment values are filled with a question mark. I was using this at another site...
5
by: Ken Varn | last post by:
If I have a value type such as int that I want to protect in a multi-threaded situation, Is it safe to use Monitor::Enter(__box(value))? I am thinking that a different object pointer is generated...
3
by: AndersBj | last post by:
Is there a way to monitor a windows service using asp.net? I would like to have a web page listing 5-6 services and their status (running, stopped etc). Any tips on how to do this would be...
8
by: Vijay Neelam | last post by:
How can I automate Microsoft Word from ASP.NET. My requirement is like this I have Datagrid with checkboxes... I need to export checkbox selected rows into Microsoft Word. I tried to...
1
by: Vijay Neelam | last post by:
How can I automate Microsoft Word from ASP.NET. My requirement is like this I have Datagrid with checkboxes... I need to export checkbox selected rows into Microsoft Word. I tried to...
4
by: John | last post by:
I'd like to write a programme that runs on a PC with two monitors. The application would be used in a shop, with one monitor for shop assistant and the other for the customer. The two must show...
1
by: dipak5801 | last post by:
i want to know how to monitor services using SNMP protocol. what is MIB and how can i get this information. anyone provide me training mateiral or step by step process using snapshot . thanks in...
3
by: Max2006 | last post by:
Hi, I have the following code to show the UpdateProgress contents at the center of page: <asp:UpdateProgress ID="UpdateProgress1" runat="server" AssociatedUpdatePanelID="UpdatePanel1"...
3
by: mariner92689 | last post by:
Hi all, I am very poor at scripting. My goal is to automate a process that I often have to stand by the computer and wait for each step to finish in order for me to manually proceed to the next...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
by: ryjfgjl | last post by:
ExcelToDatabase: batch import excel into database automatically...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
1
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
0
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.