newbie wanna make an oscilloscope!!!! - Page 1
Forum section: electronics / beginners

author: yok75
author_rank: Newbie
timestamp: October 28, 2016, 10:38:58 pm
content: hello there , okay as the subject suggested i am a newbie here (and pretty much in electronics in general), and wanna make a digital oscilloscope, why? u ask, well for four reasons :1. i want to expand my knowledge/experience in interface circuits (well i mean amplifying and isolating signals).2. i want to make a project with an arm processor based module (maybe rasperi )3. i need to have some experience with electronic product design in general4. i need an oscilo in my lab/work area (my room XD lol)specs required to achieve :25Mhz2 channel8 bit resolution256 Mbyte for storage (well i aim to use 250 msps adc and storage for 1 sec so 250*106sample/sec*8 bit/sample *1 sec /8bit/byte = 250 Mbyte )lcd interfaceand usb communicationinterface with some buttons, leds etc.my plan goes as the attachment shows but i may have a change in heart and make a part of the input goes directly to the amplification module or the isolation comes after the amplification. well i am starting with choosing the adc to design the the amplification circuit (i mean by amplification circuit is to make a voltage follower with a scalar factor so yeah pretty basic Vin=KVoutand of course with a very high impedance in mind to not interfere with the source.) so i need to know my max and min value of VREFof the adc i am gonna use, thus i need to find a specific adc and make my design for it.1. i am looking for a 250 msps(or more) with a decent price and its easy to interface with an arm processor (I am not sure yet what will be the arm module yet but i am open to suggestion). and i am not sure from where should I start to look.2. should i use an opto coupler for isolation what about power dissipation in the led should i amplify the signal with Vth leds?3. will i need faster than 1 GHz to operate the adc and to write on the memory btw i am not planning to use an os with the arm4. if u think that an arm processor wont fit such project then plz tell me why.sorry for the long post, if there is any thing in my concepts plz do tell me. and sorry if there are some (a lot lol) mistakes in my language.Thanks in advance!!! I dont know if i should have introduced my self first to be polite but I didn't wont to bore you!!!

author: ataradov
author_rank: Super Contributor
timestamp: October 28, 2016, 11:07:51 pm
content: Sorry to disappoint, but you are not going to make it.To make a scope like you are describing, you need a scope that is 10x performance of that. There is no way you can debug a 25 MHz (assuming 1/10 of the sampling rate) input stage without a ton of measurement equipment.Also, there is no way you are interfacing 250 msps ADC whit a processor. It is a deeply FPGA realm. Also, "rasperi" and other boards like that don't have interfaces to connect 250 msps ADC.And the price of components alone in single quantities will be more than the price of the Rigol DS1054.

author: ebclr
author_rank: Super Contributor
timestamp: October 28, 2016, 11:21:58 pm
content: The unique possible way to make something like that will need a FPGAhttp://www.ebay.com/itm/Portable-Mini-ARM-DSO203-4-Channel-Quad-Digital-Storage-Oscilloscope-USA-Seller-/301142042567If you down your specs, you can do only with a arm like this onehttp://www.ebay.com/itm/Portable-Mini-Nano-ARM-DSO211-Pocket-sized-Handheld-Digital-Storage-Oscilloscope-/140722136966?hash=item20c3b16786:g:3AEAAOSw8gVX7I39But the better in to forget that idea and buy a real product like thathttp://www.tequipment.net/Rigol/DS1054Z/Digital-Oscilloscopes/?gclid=CjwKEAjw7svABRCi_KPzoPr53QoSJAABSvxfEyy_X2c0DP_n7bm0QY5snOKiQZ7Is0GvyK1_yXrP9BoC747w_wcB

author: CatalinaWOW
author_rank: Super Contributor
timestamp: October 28, 2016, 11:36:58 pm
content: You can actually do quite a lot toward your stated objectives and do it with some of your desired hardware if you dramatically cut back the frequency response requirement. A scope that is perfectly usable for audio and servo work can be achieved with a Pi host, and a much less speedy A-D, which in turn will make the interface much simpler.Once you know everything there is to know about signal isolation, gain calibration, stability, triggering and a host of other things in this frequency band you can move up to higher speeds.If you do it cleverly enough you might even find a modest market for your design.

author: ataradov
author_rank: Super Contributor
timestamp: October 28, 2016, 11:39:02 pm
content: Quote from: CatalinaWOW on October 28, 2016, 11:36:58 pmBut it all starts from actually buying a real scope.Also, optocouplers for 25 MHz signal won't work, even remotely.

author: rstofer
author_rank: Super Contributor
timestamp: October 29, 2016, 12:19:50 am
content: Obviously, commercial scopes can do most of what you want. But, if you want to follow along, at the Digilent site there is a complete description of the components involved in making something very much like what you describe. I'll point you to the top page, you'll have to follow the links to get the design info:http://store.digilentinc.com/analog-discovery-2-100msps-usb-oscilloscope-logic-analyzer-and-variable-power-supply/And, yes, it uses an FPGA to speed things along.Note that it is only 100 Msps for 30+ MHz bandwidth.BTW, I have Ver 1 of the device and it's a really handy lab in a box.

author: yok75
author_rank: Newbie
timestamp: October 29, 2016, 12:48:28 am
content: thanks for the fast reply guys i do have access to couple of analogue scopes as a matter of fact if i remember correctly they would go to 100MHz (they are not mine but i can ask my prof for some time in his lab). and i am not fixated on optocouplers lol i just dont want to fry my components by mistake XDi was hoping actually to learn some arm programming (and do something useful while learning) to integrate an arm with an fpga(hence no os ) for my next project. i have never used an arm before but i did use an fpga. and i thought that all adc interfaces was easy like thathttp://www.allsyllabus.com/aj/note/EEE/Micro%20Controllers/Unit8-RK/Analog-to-digital%20converter%20(ADC)%20interfacing.php#.WBPseuB9600but i guess i was hugely mistaken, never thought that i would need my good old warrior spartan 3e starter kit (sorry for the pun) for this project. but again thank you for the reply i really do appreciate it. i think am gonna buy an oscilo and look for another project thoughso can u point me to some arm hardcore project with signal processing and interfaces etc to break the ice?

author: ataradov
author_rank: Super Contributor
timestamp: October 29, 2016, 12:55:13 am
content: Quote from: yok75 on October 29, 2016, 12:48:28 amYou need to start looking at Cortex-M7 class devices. Doing bare-metal development on boards designed for Linux is possible, but counter-productive.What kid of projects you are looking for? Your request is way too generic.

author: yok75
author_rank: Newbie
timestamp: October 29, 2016, 01:19:10 am
content: actually i am a mechatronics student i was hoping to join a research lab of medical robots or a lab of brain controlled artificial body parts (i dont remember exactly its name in English) both are at my uni. the head prof required from the under grads to have at least deep knowledge of fpga, arm, and signal processing if they want to join there labs. and i did use some fpga in previous projects so i am quite familiar with it, and i thought to begin with an oscilloscope so it would best to be able to test at home since i will probably would test with egm in free time since the uni take about 2 hrs just getting to it. so basically about the project i need it would be best to aid for such purpose

author: singapol
author_rank: Frequent Contributor
timestamp: October 29, 2016, 02:23:35 am
content: Quote from: yok75 on October 29, 2016, 01:19:10 amMechatronics students have only a superficial knowlege of electronics as they must understand how electronics is interfaced with the mechanical part of a project. Now I don't mean that if you are interested in electronics and you learn outside of your mechanical specialisation that you can't master electronics. It just that professors or employers will not assign you to do electronic design from scratch. Your speciality skills just help you understand or work better with EE engineers as a team. EE people know nuts about mechanical.Note that you are not on par with a pure mechanical engineering student just sufficiently good in both.That said it is not necessary you learn to design just able to use and know is sufficient just like you learn to drive a car and not design one. However if you have the passion no one can stop you from doing it.Would you like to recieve the pay of one job and do the work of two?

author: rfbroadband
author_rank: Unknown
timestamp: October 29, 2016, 03:57:57 am
content: it depends what the real objective is. If you do this in your spare time, in parallel, and you have the persistence to finish it, it does not matter if the final board works up to 5 or 10MHz etc. No one will fault you for that and you will learn a ton. It sounds like you would face a few challenges, but if the main objective is to learn and practice, go for it (and be prepared for setbacks).

author: ebclr
author_rank: Super Contributor
timestamp: October 29, 2016, 01:44:15 pm
content: A very nice point to learn arm programming for a mechatronic guy is making your own 3d printer or cnc controller firmware ( you can use some open source for reference )

author: rstofer
author_rank: Super Contributor
timestamp: October 29, 2016, 02:47:59 pm
content: If you want an ARM project, why not do something with an RTOS. Perhaps FreeRTOS. After you get the bare bones RTOS running, add an LCD display, perhaps a keypad of some kind and a file system. There are similar projects around.www.jcwren.com/armfor one He uses an older LPC2148 ARM chip but the ideas can be easily ported.Now that you have a complete development platform, consider adding some analog inputs, analog outputs, PWM outputs, perhaps stepper outputs and maybe build up some kind of mechanical system that is controlled by the platform. Try to choose a board that has a LOT of IO pins.You will wind up with several thousand lines of code and you're selling the quality, not so much the quanrity. It needs to look pretty!Completely off topic, I am playing with the MATLAB interface to a networked Raspberry PI which will, in turn, use SPI to do analog and digital IO. MATLAB brings horsepower to computing and the PI brings IO. This could turn out to be a very powerful combination.Or, since you have FPGA experience, read through that Digilent stuff I linked above.