Options for Internet Data Transfer
Hi! I'm entirely new to micro-controller programming and whatnot - I have experience with PHP (yeah - I know it's a lot different from BASIC :P), and am a fairly technical person in general. But, I'm kind of going on a crash-course in circuit-board design and programming to get this project up and running by the start of this upcoming school year.
I work for a public school district as the tech admin of an on-campus tutoring program I helped to create a couple years back (mainly designing the web-based data/information management systems + databases and general logistics of the program), I also work with our Learning Specialist to develop new plans for enhancing the rather uninspiring standardized curriculum with new technologies (I haven't been out of high school for too long; so, as someone with more technical interests, I can confirm that the curriculum does little for people like us).
We are working on implementing a simple RFID system that would record student attendance in our tutoring program, saving lots of paper and expensive toner used to print rosters and attendance sheets (which come out of a separate budget than what would be used to fund this endeavor). In the future, assuming the pilot program goes well, we plan to expand the system to include a lot of other functions ("one-card" system, RFID library, etc).
We're in CA, by the way. So budgets are tight (without the BASIC Stamp, there is no way we could afford to do this). And without custom designing many of the systems myself, it would take the funding of a private school to establish these kinds of programs.
I'm planning to do the project with the BS2 and a SkyeTek RFID module (and a few other things). I would like to be able to send scanned tag data (as numeric characters) to a web-server for processing and storage by a PHP script (to be recorded in the central database which handles all the other data used by my systems). The stamp wouldn't have to actually pull data from the page, but it would be nice if it could get a single byte which would communicate success or failure.
Basically, this project would need to incorporate some kind of a Ethernet module/controller so that I could send a HTTP GET request (that's how I figure, anyway - I'm open to suggestions) over a DSL line. Looking at the specifications for PINK, I don't believe it is capable of doing that (without implementing some kind of zombie PC that constantly refreshes a browser window tuned to the PINK module every second, sending the data with Javascript :P). There have been some topics here about this kind of thing in the past, but without much of a clear resolution.
There are modules like the Xport from Lantronix and other manufacturers, but these seem like fairly robust solutions (i.e. too complicated for someone with so little experience and time :P ).
I know of other options like sending the data via serial cable to a computer which would then forward the information to the server using a custom program, or saving the data to a USB data logger and manually uploading it; but this project really ought to have a small footprint and be as autonomous as possible (adding external components would really complicate things, since it would be used by people with little or no technical knowledge). Adding external components would also increase required maintenance as well as the likelihood of the system being damaged intentionally or unintentionally. I'm not going to be around to maintain the system and see that it's in working order very frequently, so physical simplicity is preferred (but you gotta do what you gotta do).
Does anyone know of other options or some other kind of Ethernet-module (with the simplicity of PINK, ideally) that would better suit my needs? Or am I looking for something that doesn't exist? I realize this isn't a very conventional use of the BS2, but any help would be appreciated.
If all goes well, then I would be building a series of devices with various functions to be placed in strategic areas on campus, so I'd expect to be buying a lot more BS2s (well, technically the District would be buying them, if they'd ever get around to reimbursing me >_>). Anyway, I hope you can help. [noparse]:)[/noparse]
Thanks in advance.
I work for a public school district as the tech admin of an on-campus tutoring program I helped to create a couple years back (mainly designing the web-based data/information management systems + databases and general logistics of the program), I also work with our Learning Specialist to develop new plans for enhancing the rather uninspiring standardized curriculum with new technologies (I haven't been out of high school for too long; so, as someone with more technical interests, I can confirm that the curriculum does little for people like us).
We are working on implementing a simple RFID system that would record student attendance in our tutoring program, saving lots of paper and expensive toner used to print rosters and attendance sheets (which come out of a separate budget than what would be used to fund this endeavor). In the future, assuming the pilot program goes well, we plan to expand the system to include a lot of other functions ("one-card" system, RFID library, etc).
We're in CA, by the way. So budgets are tight (without the BASIC Stamp, there is no way we could afford to do this). And without custom designing many of the systems myself, it would take the funding of a private school to establish these kinds of programs.
I'm planning to do the project with the BS2 and a SkyeTek RFID module (and a few other things). I would like to be able to send scanned tag data (as numeric characters) to a web-server for processing and storage by a PHP script (to be recorded in the central database which handles all the other data used by my systems). The stamp wouldn't have to actually pull data from the page, but it would be nice if it could get a single byte which would communicate success or failure.
Basically, this project would need to incorporate some kind of a Ethernet module/controller so that I could send a HTTP GET request (that's how I figure, anyway - I'm open to suggestions) over a DSL line. Looking at the specifications for PINK, I don't believe it is capable of doing that (without implementing some kind of zombie PC that constantly refreshes a browser window tuned to the PINK module every second, sending the data with Javascript :P). There have been some topics here about this kind of thing in the past, but without much of a clear resolution.
There are modules like the Xport from Lantronix and other manufacturers, but these seem like fairly robust solutions (i.e. too complicated for someone with so little experience and time :P ).
I know of other options like sending the data via serial cable to a computer which would then forward the information to the server using a custom program, or saving the data to a USB data logger and manually uploading it; but this project really ought to have a small footprint and be as autonomous as possible (adding external components would really complicate things, since it would be used by people with little or no technical knowledge). Adding external components would also increase required maintenance as well as the likelihood of the system being damaged intentionally or unintentionally. I'm not going to be around to maintain the system and see that it's in working order very frequently, so physical simplicity is preferred (but you gotta do what you gotta do).
Does anyone know of other options or some other kind of Ethernet-module (with the simplicity of PINK, ideally) that would better suit my needs? Or am I looking for something that doesn't exist? I realize this isn't a very conventional use of the BS2, but any help would be appreciated.
If all goes well, then I would be building a series of devices with various functions to be placed in strategic areas on campus, so I'd expect to be buying a lot more BS2s (well, technically the District would be buying them, if they'd ever get around to reimbursing me >_>). Anyway, I hope you can help. [noparse]:)[/noparse]
Thanks in advance.
Comments
You can also send and receive UDP messages using a PINK. For the kind of simple communications you are talking about, this may work.
Post Edited (Mike Green) : 4/22/2008 2:16:39 PM GMT
I'll look into both of those and see if I can't figure out how to implement one of them properly. Thanks!
I'll post back when I get this figured out. If anyone else has ideas too, please let me know.
Due to lots of issues with UDP (web-server, routers, etc.), I couldn't get that to work properly. But by using a combination of PINK's ability to send email along with those 100 web-accessible/settable variables (and two small PHP scripts tying it together), PINK can now communicate with my web-server both ways autonomously! It turned out a lot better than I had hoped. [noparse]:)[/noparse]
Thank you both for your help.